Javascript模块错误SyntaxError:无法在模块外部使用import语句

时间:2020-02-11 03:03:34

标签: javascript

我正在尝试测试简单的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在同一文件夹中。

我对此一无所知。

2 个答案:

答案 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

Read docs

答案 1 :(得分:0)

我通过以下操作解决了这个问题:

在浏览器中使用ES6模块时,请在文件中使用.js扩展名,并在脚本标签中添加MinLengthAttribute