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能夠設置編譯後的腳本文件引用公共函數等,而不是每一個腳本文件都持有一個副本,致使代碼冗餘。