用Babel解决node.js运行ES6的问题

时间:2022-02-09 18:50:27

其实Node的最新版本已经支持绝大部分的ES6语法了。但是还是有少部分不支持不是。。

   可以使用yarn或者npm,下面给出两种命令。我使用的npm。


一、安装:

1、假设我的项目目录是demo。那下面的所有操作都在demo目录下 

     cd demo

2、创建package.json

    npm init

3、安装babel-cli

   yarn add babel-cli --dev // npm install --save-dev babel-cli

4、安装babel的preset(安装后可以使用es6,但不能用async和await语法

yarn add babel-preset-es2015 --dev // npm install --save-dev babel-preset-es2015

5、 安装babel-preset-stage-0(包含了async/await相关的插件: babel-plugin-syntax-async-functionsbabel-plugin-transform-regenerato

yarn add babel-preset-stage-0 --dev // npm install --save-dev babel-preset-stage-0

6、还需其他配置才能使用async和await。安装transform-runtime插件

yarn add babel-plugin-transform-runtime --dev 

// npm install --save-dev babel-plugin-transform-runtime

7、安装babel-runtime

yarn add babel-runtime // npm install --save babel-runtime


二、配置 .babelrc文件

在demo下创建文件 .babelrc.

写入下面内容:

{
  "presets": ["es2015", "stage-0"],
  "plugins": [
    ["transform-runtime", {
      "helpers": false, // defaults to true
      "polyfill": false, // defaults to true
      "regenerator": true, // defaults to true
      "moduleName": "babel-runtime" // defaults to "babel-runtime"
    }]
  ]
}

三、运行

在demo下创建index.js.

然后在终端中执行命令即可: ./node_modules/.bin/babel-node index.js


参考链接:http://www.cnblogs.com/sunshine-anycall/p/6338010.html