真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

使用webpack將ES6轉(zhuǎn)化ES5的實現(xiàn)方法

babel使用

為穆棱等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務,及穆棱網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務為成都做網(wǎng)站、網(wǎng)站設(shè)計、穆棱網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

打開babel官網(wǎng),按教程安裝babel

安裝

npm install --save-dev babel-loader @babel/core @babel/preset-env

配置rules

module: {
 rules: [
  { test: /\.js$/, exclude: /node_modules/, loader: "babel-loader" }
 ]
}

生成 .babelrc文件

{
 "presets": ["@babel/preset-env"]
}

此時webpack已經(jīng)能正確的將高版本的js語法轉(zhuǎn)為低版本的語法,但是對于新增的api并不會轉(zhuǎn)化,如promise。這時我們就需要其他的插件

使用polyfill插件,對于babel=>7.4.0該方法棄用

安裝

npm install --save @babel/polyfill

修改 .babelrc

{
 "presets": [
  [
   "@babel/preset-env",
   {
     "useBuiltIns":"usage" // 只轉(zhuǎn)化使用了的API
   }
  ]
 ]
}

使用 在需要轉(zhuǎn)換的文件里引入polyfill

import "@babel/polyfill";

@babel/polyfill 和 @babel/preset-env 的關(guān)系

@babel/preset-env 中與 @babel/polyfill 的相關(guān)參數(shù)有 targets 和 useBuiltIns 兩個

targets: 支持的目標瀏覽器的列表

useBuiltIns: 參數(shù)有 “entry”、”usage”、false 三個值。默認值是false,此參數(shù)決定了babel打包時如何處理@babel/polyfilll 語句。

“entry”: 會將文件中 import‘@babel/polyfilll'語句 結(jié)合 targets ,轉(zhuǎn)換為一系列引入語句,去掉目標瀏覽器已支持的polyfilll 模塊,不管代碼里有沒有用到,只要目標瀏覽器不支持都會引入對應的polyfilll 模塊。

“usage”: 不需要手動在代碼里寫import‘@babel/polyfilll',打包時會自動根據(jù)實際代碼的使用情況,結(jié)合 targets 引入代碼里實際用到 部分 polyfilll 模塊

false: 對 import‘@babel/polyfilll'不作任何處理,也不會自動引入 polyfilll 模塊

使用plugin-transform-runtime

安裝

npm install --save-dev @babel/plugin-transform-runtime

修改 .babelrc

{
"presets": [
  [
   "@babel/preset-env"
  ]
 ],
 "plugins": [
  [
   "@babel/plugin-transform-runtime",
   {
    "absoluteRuntime": false,
    "corejs": 3,
    "helpers": true,
    "regenerator": true,
    "useESModules": false
   }
  ]
 ]
}

注意上面corejs設(shè)置項,不同的值需要不同的依賴包

corejs的值需要安裝的依賴包
falsenpm install --save @babel/runtim
2npm install --save @babel/runtime-corejs2
3npm install --save @babel/runtime-corejs3

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


網(wǎng)頁名稱:使用webpack將ES6轉(zhuǎn)化ES5的實現(xiàn)方法
當前網(wǎng)址:http://weahome.cn/article/pdodcp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部