Blockly.Workspace 什么时候创建?

问题描述

我正在尝试覆盖 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 的使用位置时,我无法找到它被调用的位置:

Blockly.Workspace

Workspace 扩展 Workspace__Class 并且仅在压缩文件和 workspace.js 文件中提及。

所以我的问题是:什么时候调用 Blockly.Workspace 并实例化 this.variableMap_

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...