由于在Express框架中无法直接使用import来引入,只能通过require来引入,这是由于nodejs采用的是CommonJS的模块化规范,使用require引入模块;而import是ES6的模块化规范关键字。想要使用import,必须引入babel转义支持,通过babel进行编译,使其变成node的模块化代码。
安装babel依赖
npm install babel-cli -g
npm install babel-register babel-preset-env -D
修改package.json
将node ./bin/www改为babel-node app
修改app.js
在app.js文件最顶部加入require('babel-register');
因为第二步的时候已经将启动项./bin/www取消(./bin/www中定义了监听端口),我们需要在app.js中重新设置监听端口,顺便测试一下是否可以正常使用import导入
参照图片输入代码
//导入http模块
import http from 'http'
//创建服务
let server = http.createServer(app)
//设置监听端口
server.listen(3000, console.log("application is start at port 3000"))
运行项目
#npm启动
npm start
#nodemon启动
nodemon start
ok,启动成功
版权属于:Citrons
本文链接:https://www.citrons.cn/express/287.html
转载时须注明出处及本声明