如何在Node.js中启用ES模块

您如何启用importNode.js中的语法?

现在,许多教程都使用import XXX from 'XXX'ES模块)语法,而不是const XXX = require('XXX')普通JS) 句法。

如果将其添加到Node.js应用程序,它将无法正常工作。您将收到如下错误:

unexpected identifier error

unexpected identifier..

解决方案之一是使用巴别塔。如果您已经为您的项目设置了Babel设置,那么它应该已经为您工作。

但是,您现在不再需要Babel,因为Node具有对ES模块的实验性支持,并且由于它是实验性的,要使其启用,您必须做三件事。

首先,安装最新版本的Node.js。它具有最新,最强大的功能。

其次,添加"type": "module"在你的行package.json文件。

第三,使用--experimental-modules调用时标记nodejs

node --experimental-modules app.js

你应该很好走!

一种替代方法是避免添加"type": "module"在你的行package.json文件,而是重命名您的app.js归档(或其他)到app.mjs

请注意,现在require()语法将停止工作。

对于可能不支持此标志的较旧的Node.js版本,我建议您查看esmnpm模块

免费下载我的Node.js手册


更多节点教程: