应用程序的起点是main.html
在main.html中,我通过标签介绍index.js。
在index.js中,我从paddle.js导入了Paddle类
所有3个文件都在同一目录中
如果我从paddle.js复制Paddle类(在main.html的画布底部的矩形上绘制),然后将其粘贴到index.js中,则效果很好。
但是,从paddle模块导入Paddle类时,在屏幕上什么也没有,并且在我看来是Chrome Javascript控制台中的一个隐秘语法错误:“从” / paddle“导入Paddle;未捕获的语法错误,意外的标识符”
代码:
main.html-在标签底部
<script src="index.js"> </script>
index.js
import Paddle from "/paddle";
let canvas = document.getElementById("gameScreen");
...
paddle.js
export default class Paddle {...}
我使用的是chrome 70,但是在Firefox 63上也无法使用(据说这两者都支持现成的模块)
我正在Google各处查找内容,并且将语法与文档进行了匹配,但看不到任何错误。
答案 0 :(得分:1)
您能尝试一下并告诉我是否有帮助
<script type="module" src="index.js"> </script>
答案 1 :(得分:0)
为了从嵌入式脚本中导入,您必须将attribute =“ module”添加到嵌入式脚本的标记中。 MDN。
静态导入语句用于导入以下绑定: 由另一个模块导出。导入的模块处于严格模式 无论您是否声明它们为真。导入语句不能 除非此类脚本具有type =“ module”。否则将在嵌入式脚本中使用。
还有一个类似函数的动态import(),它不需要 类型为“模块”的脚本。