我正在尝试使用Node和一些ES6 /功能的东西 这是两个文件 的 dog.js
const dog = () => {
return {
test: (arg) => console.log("dog say: " + arg)
}
}
export default dog;
1.js
import dog from './dog';
const d = dog()
d.test('111');
节点版本 - 10.4.0(节点设置正常)
当我正在运行node 1.js
时 - 收到错误 Unexpected identifier
,指向狗。这有什么不对?
P.S。 1.js已更新以正确使用导入的功能,但即使在此之后我仍然会收到错误。
答案 0 :(得分:2)
您的代码有效,它记录:
狗说:111
但是,ECMAScript模块在节点v10.4.0中为Experimental。
您需要使用--experimental-modules
标志/选项运行节点。例如
node --experimental-modules 1.js
另请参阅有关模块文件的.mjs扩展名的说明。因此,您可能需要将1.js
更改为:
// Note the .mjs extension
import dog from './dog.mjs';
const d = dog()
d.test('111');