Javascript &引用;意外令牌导入“;实现本机ES6模块
我需要重构一些JavaScript代码,并尝试使用本机导入/导出命令实现ES6模块。我花了一段时间才让它工作起来,所以我将在这里记录下需要做的事情,以供将来参考 症状是我在Chrome控制台中收到以下消息:Javascript &引用;意外令牌导入“;实现本机ES6模块,javascript,google-chrome,ecmascript-6,es6-modules,Javascript,Google Chrome,Ecmascript 6,Es6 Modules,我需要重构一些JavaScript代码,并尝试使用本机导入/导出命令实现ES6模块。我花了一段时间才让它工作起来,所以我将在这里记录下需要做的事情,以供将来参考 症状是我在Chrome控制台中收到以下消息: Uncaught SyntaxError: Unexpected token import 我的测试基本代码是: HTML: alert_path.js: export function apath() { alert('Bang!!!'); } 我必须采取两种行动来解决这个问题
Uncaught SyntaxError: Unexpected token import
我的测试基本代码是:
HTML:
alert_path.js:
export function apath() {
alert('Bang!!!');
}
我必须采取两种行动来解决这个问题 首先,铬含量必须在61+以上chrome://flags 必须启用实验性Web平台功能 其次,脚本标记必须使用类型模块:
<!DOCTYPE html>
<html>
<body>
<h1>Import test</h1>
</body>
<script type="module" src="./import.js"></script>
</html>
导入测试
我在什么是基础下找到了第二个答案
模块最终必须包含在HTML中,并使用type=“module”,
它可以显示为内联或外部脚本标记
注意,解决此问题后,样本将因CORS冲突而失败,除非它通过服务器运行,但这是另一个问题。是的,ES6模块的支持率非常低。您可以使用system.js、,->
export function apath() {
alert('Bang!!!');
}
<!DOCTYPE html>
<html>
<body>
<h1>Import test</h1>
</body>
<script type="module" src="./import.js"></script>
</html>