您好,我正在尝试向我的代码中添加一个模块。在 ES5 中我使用
var promise = require('bluebird');
所以我尝试了 import { promise } from 'bluebird'
但不知道为什么?
原文由 Muhammad Raihan Muhaimin 发布,翻译遵循 CC BY-SA 4.0 许可协议
您好,我正在尝试向我的代码中添加一个模块。在 ES5 中我使用
var promise = require('bluebird');
所以我尝试了 import { promise } from 'bluebird'
但不知道为什么?
原文由 Muhammad Raihan Muhaimin 发布,翻译遵循 CC BY-SA 4.0 许可协议
一般使用 import
而不是 require
我们应该使用一些外部模块,因为 Node.js
还不支持ES6的导入。
为此,我们首先必须安装这些模块 babel-preset-es2015
和 babel-cli
。
npm install --save-dev babel-preset-es2015 babel-cli
然后我们创建一个名为 .babelrc
的点文件,我们在其中添加这个对象:
{
"presets": ["es2015"]
}
现在我们将能够使用 import
而不是 require
。 For example, we can try on some server.js
file this peace of code where we call express
module using import
instead of require
:
import express from 'express'; //instead of const express = require('express');
const app = express();
app.get('/',function (req, res){
res.send('hello from import');
});
app.listen(4444, function(){
console.log('server running on port 4444');
});
最后在我们的 shell 中,我们将不得不运行这个命令:
./node_modules/.bin/babel-node app.js --presets es2015
原文由 Taha EL BOUFFI 发布,翻译遵循 CC BY-SA 3.0 许可协议
13 回答13k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
实际上
import { promise } from 'bluebird'
在 es5 中翻译为var promise = require('bluebird').promise
。所以在es6中相当于var promise = require('bluebird')
是import * as promise from 'bluebird'
编辑:根据@Bergi 的评论:
import Promise from 'bluebird'
是一个更简化的版本。