我正在尝试测试简单的export
和import
示例。
//file a.js
export const a = 2
//file b.js
import {a} from './a.js'
console.log(a);
但是显示错误
从'./a.js'导入{a}
^^^^^^^
SyntaxError:无法在模块外部使用import语句
我使用vscode对此进行测试。
a.js和b.js在同一文件夹中。
我对此一无所知。
答案 0 :(得分:2)
如果您使用的是浏览器,请尝试@karma Blackshaw的答案。如果您正在使用节点,请向您的package.json添加"type": "module"
。
或者,您可以将.js文件的扩展名更改为.mjs并使用--experimental modules
标志
a.mjs
//file a.mjs
export const a = 2
b.mjs:
import {a} from './a.mjs'
console.log(a);
并使用:
运行node --experimental-modules b.mjs
答案 1 :(得分:0)
我通过以下操作解决了这个问题:
在浏览器中使用ES6模块时,请在文件中使用.js扩展名,并在脚本标签中添加MinLengthAttribute