【问题标题】:Can I use es6 style module import in nodejs application我可以在 nodejs 应用程序中使用 es6 样式的模块导入吗
【发布时间】:2016-12-27 03:23:27
【问题描述】:

我正在使用最新的 nodejs 版本,但是在使用 es6 模块导入时仍然出现错误。

我还可以在博客上找到 node 还不支持 es6 导入模块。 https://nodesource.com/blog/es-modules-and-node-js-hard-choices/ - 目前没有 JavaScript 运行时支持 ES 模块。 我是 javascript 和 node 的新手,是否有人使用 nodejs 导入 es6 模块,而无需将代码转换为较低的 js 版本。

【问题讨论】:

  • 它没有实现,所以你不能“使用”它。 “无需将代码转换为较低的 js 版本” --- 对于 es2015 模块,它不是“较低版本”,而是“支持的 API”。
  • 感谢您的确认。请将此评论移至答案部分。

标签: javascript node.js ecmascript-6


【解决方案1】:

如果你愿意使用像 Babel 这样的工具,你可以。

npm i -D babel babel-cli babel-core babel-preset-es2015

创建一个文件.babelrc 并将以下内容放入其中:

{
    "presets": ["es2015"]
}

然后在package.jsonscripts 部分执行如下操作:

"dev": "babel src -d dist && node dist/your_file.js"

这将转换名为src/ 的目录中的所有代码,但它位于名为dist/ 的目录中,然后运行您指定的文件。

然后可以通过如下命令使用:

npm dev

【讨论】:

  • 或者使用 babel-node 运行脚本
【解决方案2】:

2019 年更新: 节点 v12 支持导入/导出语句。 现在在--experimental-modules 标志后面。 应该会在今年 10 月删除。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-08
    • 1970-01-01
    • 2018-11-25
    • 1970-01-01
    • 1970-01-01
    • 2022-08-02
    • 2015-09-20
    • 2018-01-04
    相关资源
    最近更新 更多