我试图使ES6
节点中的导入挂起,并尝试使用此示例中提供的语法:
备忘单链接
我正在浏览支持表,但无法找到哪个版本支持新的导入语句(我尝试查找文本导入/请求),我目前正在运行节点8.1.2,并且也相信,由于备忘单是引用.js文件,它应该与.js文件一起使用。
当我运行代码时(摘自备忘单的第一个示例):
import { square, diag } from 'lib';
我得到错误:
SyntaxError: Unexpected token import.
我要导入的对lib的引用:
//------ lib.js ------
export const sqrt = Math.sqrt;
export function square(x) {
return x * x;
}
export function diag(x, y) {
return sqrt(square(x) + square(y));
}
我想念的是什么?如何node
才能认出我的import
陈述?
使用
.mjs
扩展名(如接受的答案中建议的那样)以启用ECMAScript模块,但是,对于Node.js v12,您还可以在中全局启用此功能package.json
。在官方的文档说明:
(当然
--experimental-modules
,启动应用程序时,您仍然必须提供标志)。