babel-core vue
只转换语法(如箭头函数)react
babel-polyfill浏览器
由core-js和regenerator runtime组成。babel
1 core-js用来支持新的全局变量(例如 Promise、Symbol等) 、新的原生方法(如 String.padStart等)。async
2 regenerator runtime由facebook提供,用ES 5实现了生成器函数(GeneratorFunction)、迭代器(AsyncIterator)。函数
生成器函数(function *)、async/await函数会被编译成regenerator runtime实现的生成器函数、迭代器来运行。spa
Presets(预设)插件
1 babel-preset-env:指定目标环境(浏览器类型、浏览器版本)orm
2 babel-preset-stage-x:对如今还没有被批准发布的部分进行转换。generator
TC39委员会将提案分为如下阶段:
3 babel-preset-react用来编译JSX语法
4 babel-preset-vue用来编译Vue
Plugins(插件)
控制babel的编译行为。
babel-plugin-transform-runtime能够设置编译后的脚本文件引用公共函数等,而不是每一个脚本文件都持有一个副本,致使代码冗余。