Babel 6 概述

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委員會將提案分爲如下階段:

  • Stage 0 - 稻草人: 只是個想法可能會有相關的 Babel 插件。
  • Stage 1 - 提議: 值得深刻。
  • Stage 2 - 草稿: 初始規範。
  • Stage 3 - 候選: 完整的規範和初始瀏覽器實現。
  • Stage 4 - 結束: 將被添加到下一個年度版本中。

3 babel-preset-react用來編譯JSX語法

4 babel-preset-vue用來編譯Vue

 

Plugins(插件)

控制babel的編譯行爲。

babel-plugin-transform-runtime能夠設置編譯後的腳本文件引用公共函數等,而不是每一個腳本文件都持有一個副本,致使代碼冗餘。

相關文章
相關標籤/搜索