【发布时间】:2019-09-23 15:50:05
【问题描述】:
我希望停止对以下模块使用 require() 语句,因为 Node 版本 11 现在支持 ES6,但除了 express 作为 import 语句之外,我找不到任何关于如何编写以下内容的文档:
import express from "express";
const http = require('http');
import bodyParser from 'body-parser';
const morgan = require('morgan');
morgan 和 http 与 bodyParser 一样吗?
例如morgan我只见过:
import logger from 'morgan';
对于http,我只见过:
import * as http from 'http';
【问题讨论】:
-
ES6 使用 node.js 中的实验标志导入仅支持具有
.mjs扩展名的文件。如果包不支持 ES6 模块语法,那么你不能那样导入它。 -
@PatrickRoberts,您能否将其添加为您的答案,谢谢。
-
这并不是一个完整的答案。你仍然可以使用打包器或模块加载器(如 rollup、webpack、babel 等)使其工作,但在服务器端这样做是非常不典型的。
-
@PatrickRoberts,我认为你分享的两个 cmets 会给出一个完整的答案。
标签: javascript node.js import module require