【发布时间】:2017-07-03 09:10:52
【问题描述】:
我正在尝试将 Blockly(通过 npm 的 node-blockly)导入 VueJS 组件,但 Blockly 的 javascript 部分包含 getElementById() 调用,这会导致错误为 document.getElementById() 在 VueJS 中不可用。
知道如何解决这个问题吗?
(编辑)代码示例:
<template>
<div class="hello">
<div id="blocklyDiv" style="height: 480px; width: 600px;">
</div>
<xml id="toolbox" ref=toolbox style="display: none">
<block type="controls_if"></block>
<block type="text"></block> <block type="text_print"></block>
</xml>
</div>
</template>
<script>
import Blockly from "node-blockly"
export default { name: 'hello' }
var workspace = Blockly.inject('blocklyDiv', {toolbox: document.getElementById('toolbox')});
</script>
【问题讨论】:
-
我不确定我是否理解。 document.getElementById 适用于 vue.js。你能提供一个不起作用的代码示例吗?
-
我认为您使用的是具有 eslint 的 webpack 版本?如果是,那么您需要在 eslintrc 中允许浏览器。如果这是您的情况,那么我将发布答案。
-
我在创建 webpack 项目(使用 vue cli)时选择不使用 eslint。