【发布时间】:2019-07-26 22:00:58
【问题描述】:
我正在尝试执行以下导入
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)
- 模块文档位于here,并在示例中执行完全相同的导入。
-
我已经全局安装了模块。
npm list -g | grep resclient └─┬ resclient@2.0.2 -
我使用的是以下节点版本
$node -v v11.10.1
我看过一些关于这个错误的其他帖子。例如here,但它是一个基于浏览器的问题,使用客户端 javascript 而不是节点。 我是一个节点新手,所以无论多么基本,我都会感激任何指针。
【问题讨论】:
-
@Seblor 我不同意。我看过那个帖子。在版本 8.50 之后,导入仅适用于 node.js。我已将我的版本升级到 11.1,所以这对我来说不再是问题。如果您查看他们正在谈论的错误,那就不同了
-
@ArranDuff 恐怕您只是部分正确,它在 Node 8.5+ 中受支持,但仅在启用
--experimental-modules标志的情况下启用(链接的答案确实解释了)。因此,您的选择是启用该标志或使用像 Babel 这样的转译器。 -
好吧,看来我看错了帖子。谢谢大家
标签: node.js