国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

詳解webpack babel的配置

2024-05-06 16:41:52
字體:
來源:轉載
供稿:網友

Babel是什么

Babel是一個編譯JavaScript的平臺,它的強大之處表現在可以通過編譯幫你達到:

  1. 使用下一代的javascript(ES6,ES7,……)代碼,即使當前瀏覽器沒有完成支持;
  2. 使用基于JavvScript進行擴展語言,比如React的JSX;

npm i babel-core babel-preset-env babel-loader babel-plugin-transform-runtime babel-preset-stage-2 -D

關于babel的使用

首先 babel-preset-es2015 已經廢棄,你可以使用 babel-preset-env 來代替它,后者比前者更好的更方便,這里不在贅述。

babel-polyfill VS babel-runtime VS babel-plugin-transform-runtime

  1. 首先 babel-polyfill 是對所有的API進行全局設置。并且會污染全局變量。
  2. babel-runtime 需要對你需要的API,如:Object.assign()。會先require()
  3. babel-plugin-transform-runtime 最推薦。它不需要require()也不會全局污染,并且,更厲害的是它是按需打包,全自動。

開始

/**** webpack.config.js ****/// 在規則中增加{  test: //.js$/,  use: 'babel-loader',  // 只處理src目錄下面的。  // 你也可以配置一條規則處理node_modules下面的。  // 我記得swiper不知道哪一版本的直接把原來為編譯的es6的語法塞給我,導致瀏覽器不兼容。  include:[resolve('../src')]}/**** .babelrc ****/// presets字段設定轉碼規則{ "presets": [  ["env", {   "modules": false,   // 需要支持的環境,可選入: chrome, edge, 也可以node:6.5 ,node:current......   "targets": {    "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]   }  }],  "stage-2" ], // babel-transform-plugin轉碼預設不起作用的內容如:Object.assign()等等 "plugins": ["transform-runtime"]}

presets能夠解決哪些語法。 package

babel-plugin-transform-runtime能夠解決哪些語法。 package

其他。 更多 

最后:babel看上去好像要配置很多,其實經過官方的一頓簡化之后需要的并沒有那么繁瑣。

github

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新建县| 双江| 兰溪市| 黑水县| 湘乡市| 沧州市| 漳州市| 偃师市| 黎川县| 榆中县| 山阴县| 巴林左旗| 锦屏县| 洛阳市| 清涧县| 黄骅市| 伊金霍洛旗| 松阳县| 红桥区| 临颍县| 冷水江市| 扶沟县| 南城县| 朝阳区| 彭泽县| 浮梁县| 静宁县| 仪征市| 新巴尔虎右旗| 宣武区| 佛学| 思茅市| 延寿县| 大荔县| 靖宇县| 阿克苏市| 彝良县| 犍为县| 于田县| 定州市| 湖北省|