Dav*_*Sag 3 javascript node.js transpiler ecmascript-6 babeljs
在我使用的Node应用程序中import,箭头函数,扩展运算符,对象解构let,和const.
在我的package.json我包括以下内容
"engines": {
"node": ">=6.9.4",
"npm": "^3"
},
Run Code Online (Sandbox Code Playgroud)
以及
"babel": {
"presets": [
"node6",
"stage-0"
]
},
Run Code Online (Sandbox Code Playgroud)
和
"scripts": {
"clean": "rm -rf bin/",
"start": "node bin/index.js",
"babel": "babel src --out-dir bin",
"build": "npm run clean && npm run babel",
"dev": "babel-node src/index.js",
"test": "find ./test -name '*_spec.js' | NODE_ENV=test xargs mocha --compilers js:babel-core/register --require ./test/test_helper.js"
},
Run Code Online (Sandbox Code Playgroud)
代码工作和转换,但我注意到,看到转换后的文件,它正在转换let为var,这似乎毫无意义,因为Node 6.9.4完全支持let本机的使用.
什么是最小的babel插件集,允许我的代码在Node 6.9.4或更高版本下运行,并最大限度地使用其本机语言功能?
最简单的选择是使用https://github.com/babel/babel-preset-env.所以你可以安装它然后在你的Babel配置中
{
presets: [['env', {targets: {node: true}}]]
}
Run Code Online (Sandbox Code Playgroud)
它会自动为您当前的Node版本配置插件.