0

我在访问 Vue 应用程序中的 Blockly 组件生成的 javascript 代码时遇到问题。我可以通过多种方式 console.log 工作区,但是在尝试生成 javascript 代码时,工作区是未定义的。否则,Blockly 工作正常。

// Set workspace with reference to div and xml
this.workspace = Blockly.inject(this.$refs.blocklyDiv, {
   toolbox: this.$refs.tools
});
// another way to access the workspace
var workspace = Blockly.JavaScript.workspaceToCode();
// however,
console.log(this.workspace); // and
console.log(a);

都打印一个“Blockly.WorkspaceSvg {…}”//对象

var code = Blockly.JavaScript.workspaceToCode(this.workspace); // any implementation of a workspace
console.log(code);

总是返回“...;” 和“没有在 workspaceToCode 调用中指定工作区。猜测。”

我尝试在打开脚本标记和导出默认值之间设置一个工作区变量,这也允许 console.log(workspace) 但在 workspaceToCode(workspace); 上失败;

如果我删除 Vue,它会起作用。我需要围绕我的 Vue 实例构建 Blockly 吗?

4

1 回答 1

0

谜团已揭开 -

这与使用自定义块有关。

于 2018-02-08T15:15:14.303 回答