我正在尝试进行以下导入
import ResClient from 'resclient';
/home/arran/WebstormProjects/untitled1/app.js:2
import ResClient from 'resclient';
^^^^^^^^^
SyntaxError: Unexpected identifier
at new Script (vm.js:85:7)
at createScript (vm.js:266:10)
at Object.runInThisContext (vm.js:314:10)
at Module._compile (internal/modules/cjs/loader.js:698:28)
at Object.Module._extensions..js
(internal/modules/cjs/loader.js:749:10)
at Module.load (internal/modules/cjs/loader.js:630:32)
at tryModuleLoad (internal/modules/cjs/loader.js:570:12)
at Function.Module._load (internal/modules/cjs/loader.js:562:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:801:12)
我已经全局安装了模块。
npm list -g | grep resclient
└─┬ resclient@2.0.2
我正在使用以下节点版本
$node -v
v11.10.1
我还看到了有关此错误的其他文章。例如here,但这是使用客户端JavaScript而不是节点的基于浏览器的问题。 我是一个新手节点,所以无论基础如何,都希望能对它有所指点。
答案 0 :(得分:4)
对于节点12,您可以在package.json中将属性type
添加为
"type": "module"
也不要忘记运行带有实验模块标志node --experimental-modules youapp.js
答案 1 :(得分:0)
我也面临着同样的问题。这是我固定的方法。
我首先使用以下命令更新了节点及其包管理器版本:
npm install node@latest -g
和
npm install npm@latest -g
这样做之后,我转到package.json
文件,并在scripts
属性之前添加了以下行:
"type": "module",
最后,我回过头来尝试使用node app.js
运行我的代码,但是直到使用以下命令,该代码才起作用:
node --experimental-modules app.js
在您身边,将app.js
替换为您的索引文件。希望它也对你有用
很好的编码