[英]Using ES6 modules in Express
有没有办法
Express
应用程序中使用 ES6 模块编写我的代码;babel
或@std/esm
? 一旦我致力于Express
的app.js
,我就找不到摆脱它的方法。
这似乎应该已经在 web 上,但我能找到的只是上面的选项(转译,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
这行得通 - 我只是用节点 v14.4.0 运行它:。 其他方法在我之前给你的链接中讨论过。 根据该文档,有三种方法可以指定您将 ESM 模块加载为顶级模块文件:
以.mjs
结尾的文件。
当最近的父package.json
文件包含值为“模块”的顶级字段“类型”时,以.js
结尾的文件。
字符串作为参数--eval
,或通过 STDIN 管道传输到节点,带有标志--input-type=module
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.