Babel6 — ES6编译器

Tags
javascriptnodejs
Created
Nov 16, 2015 12:09 PM

所有ES6\7内容编译成ES5的兼容版本。

//(via) babel编译通过 babylon(解析成ast)babel-traverse(替换节点) 以及 babel-generator

// es ast 规范:https://github.com/estree/estree

npm install babel -g

npm install babel-cli -g

npm install babel-core babel-preset-es2015 babel-preset-react --save-dev

在目录下配置一个.babelrc文件{"presets": ["es2015","react"]}

也可以放在package.json的babel字段下

编译babel src > src.compiled.js或babel src --out-dir lib

babel-node进入REPL环境

直接运行 babel-node <.js>

// 直接在代码开头加入:require("babel-register"); 也可以自动处理后面的require;// .babelrc 得写好

模块入口 main 应该指向构建后的脚本, 这样用你模块的用户不需要去进行编译, 以及线上运行得时候不用去编译。

开发调试的时候, 可以直接用 babel-cli 模块提供 babel-node 代替 node 直接启动 src目录下面的入口脚本。

"scripts": {

"start": "babel-node src/index.js",

},

坑:在用户目录下有配置时可能会被其他项目读取,而项目用的babel版本不同配置也不尽相同,不认识的配置会终端babel编译。

.

SuperMade with Super