首页 > 学院 > 开发设计 > 正文

es6 Babel转换器笔记

2019-11-08 01:47:34
字体:
来源:转载
供稿:网友

配置文件 .babelrc

基本配置书写 { "PResets":[], "plugins":[] }

presets 字段设定转码规则;常用的规则集 babel-preset-es2015 babel-preset-react babel-preset-stage-*(*为0-3,对应es7不同阶段语法提案的转码规则 共4个阶段)plugin presets,也就是一堆plugins的预设,起到方便的作用。如果你不采用presets,完全可以单独引入某个功能。常用的插件 transform-runtime { "plugins": ["transform-runtime", options] }

主要有以下options选择。

helpers: boolean,默认true;使用babel的helper函数。polyfill: boolean,默认true;使用babel的polyfill,但是不能完全取代babel-polyfill。regenerator: boolean,默认true;使用babel的regenerator。moduleName: string,默认babel-runtime;使用对应module处理。 一般情况默认设置即可,详细文档

自定义预设或插件

Babel支持自定义的预设(presets)或插件(plugins)。 如果你的插件在npm上, 可以直接采用这种方式“plugins”: [“babel-plugin-myPlugin”] 等价方式“plugins”: [“myPlugin”]。此外,你还可以采用本地的相对路径引入插件,比如“plugins”:[“./node_modules/Myplugin”]。 presets同理。 babel官网

babel命令

balel a.js 直接输出转换后的js babel a.js --out-file b.js babel a.js -o b.js 输出到b.js babel dir1 --out-dir dir2 babel dir1 -d dir2 路径下输出 babel src -d lib -s -s 参数生成source map文件

babel-cli

babel-cli带一个babel-node 支持类似node 可以直接运行ES6

babel-regiser

babel-register模块改写require命令,为它加上一个钩子。此后,每当使用require加载.js、.jsx、.es和.es6后缀名的文件,就会先用Babel进行转码,在js…文件中引入; require("babel-register"); 就不需要手动对index.js转码了


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表