node中如何用import http from 'http'?

一般都是

var http = require('http');

写成

import http from 'http';

报错。

那如何用第二种方式写而不报错。

阅读 11.5k
4 个回答

node还不支持ES6的module啊.
如果要用只能用babel编译了.

node模块中还是common就是规范呀~~~es6的模块机智还没有完全实现

题主应该是使用了webpack在项目中使用babel编译。

首先保证你的'http'是否能被npm install或者自己有没有封装'http'这个方法且export出来。如果ok那就不会报错。
如果没有使用babel编译就会报错。

ps:目前为止还没有JS引擎支持ES6 modules,而babel是用来将导入和导出声明转换为CommonJS(require/module.exports)的。及时使用了import最后还是被编译为commonjs的规范在node中跑。

踩的人来留言,有问题来讨论!

ES6用 import
node用require

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题