有没有办法
Express
中的 ES6 模块编写我的代码应用程序; babel
或 @std/esm
? 一旦我致力于
app.js
的 Express
,我找不到摆脱它的方法。这似乎应该已经在网络上,但我能找到的只是上面的选项(转译,esm)。
最佳答案
使用 node.js,你必须告诉它你正在加载的主文件是一个 ESM 模块。有几种方法可以做到这一点。最简单的就是给主文件一个.mjs
文件扩展名。
// app.mjs
import express from 'express';
const app = express();
app.get("/", (req, res) => {
res.send("hello");
});
app.listen(80);
然后,使用以下命令启动您的程序:node app.mjs
这行得通 - 我只是用 Node v14.4.0 运行它:。其他方法在我之前给你的链接中讨论过 here .根据该文档,有三种方法可以指定您将 ESM 模块加载为顶级模块文件:.mjs
结尾的文件..js
结尾的文件当最近的 parent package.json
文件包含一个值为“module”的顶级字段“type”。--eval
的字符串,或通过 STDIN 管道传输到 Node ,带有标志 --input-type=module
.关于javascript - 在 Express 中使用 ES6 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62743570/