问题描述
我正在尝试覆盖 Blockly API 中的某些功能。我正在使用 react 并使用 react-blockly 包。我正在覆盖 workspace class。我的代码与官方存储库中的代码完全一样,我将 createVariable 更改为如下所示:
Blockly.Workspace.prototype.createVariable = function (
name,opt_type,opt_id,opt_length
) {
return this.variableMap_.createVariable(name,opt_length);
};
如您所见,该函数使用的是在调用 Blockly.Workspace
时实例化的 variableMap_:
Blockly.Workspace = function (opt_options) {
...
this.variableMap_ = new Blockly.VariableMap(this);
...
}
当我运行我的代码时,Blockly.Workspace
从未被调用并且 variableMap_
未定义。
当我在官方存储库中搜索 Blockly.Workspace 的使用位置时,我无法找到它被调用的位置:
Workspace
扩展 Workspace__Class
并且仅在压缩文件和 workspace.js 文件中提及。
所以我的问题是:什么时候调用 Blockly.Workspace
并实例化 this.variableMap_
?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)