欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

怎么在Webpack4中利用Babel處理ES6語法-創(chuàng)新互聯(lián)

本篇文章為大家展示了怎么在Webpack4中利用Babel處理ES6語法,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司專注于中大型企業(yè)的網(wǎng)站設(shè)計(jì)、做網(wǎng)站和網(wǎng)站改版、網(wǎng)站營銷服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開發(fā)的融合,累計(jì)客戶千余家,服務(wù)滿意度達(dá)97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準(zhǔn)確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運(yùn)用,我們將一直專注成都品牌網(wǎng)站建設(shè)和互聯(lián)網(wǎng)程序開發(fā),在前進(jìn)的路上,與客戶一起成長!

修改 index.js 內(nèi)容,寫一些 ES6 的語法:

const arr = [
  new Promise(() => {}),
  new Promise(() => {})
];

arr.map(item => {
  console.log(item);
})

ES6 很強(qiáng)大,但目前并不是所有的瀏覽器都支持,所以需要用到 Babel,讓舊的瀏覽器或環(huán)境中將 ES6 代碼轉(zhuǎn)換為向后兼容版本的 JavaScript 代碼。

來試一下吧,先安裝需要用的 Babel 包:

npm install babel-loader @babel/core -D

配置 webpack.config.js,增加一條 rulues :

 module: {
  rules: [{
   test: /\.js$/,
   exclude: /node_modules/, // 排除該目錄下的所有代碼
   loader: "babel-loader"
  }]
 }

babel-loader 告訴了 webpack 怎么處理 ES6 代碼,但它并不會(huì)將ES6 代碼翻譯成向后兼容版本的代碼,如果想要執(zhí)行這一步,還需要安裝一個(gè)模塊 preset-env,它包含了所有 ES6 代碼轉(zhuǎn)換的規(guī)則:

npm install @babel/preset-env -D

安裝完之后配置一下:

rules: [{
 test: /\.js$/,
 exclude: /node_modules/, // 排除該目錄下的所有代碼
 loader: 'babel-loader',
 options:{
  'presets': ['@babel/preset-env']
 }
}]

這樣,運(yùn)行打包命令,就可以把 ES6 語法翻譯成 ES5了,看一下打包的結(jié)果:

怎么在Webpack4中利用Babel處理ES6語法

沒問題,語法已經(jīng)翻譯成了當(dāng)前所有瀏覽器能識(shí)別的語法,但是做到了這一點(diǎn)還是不夠,因?yàn)槟切┍容^新的對象和函數(shù),比如這里的 Promisemap,在低版本的瀏覽器里實(shí)際還是不存在的。所以這時(shí)不僅要進(jìn)行語法的轉(zhuǎn)換,還要想辦法把這些新的特性,補(bǔ)充到低版本的瀏覽器里。怎么做呢? babel 提供了一個(gè)工具叫 polyfill,安裝:

npm install @babel/polyfill -D

然后在 index.js 的最頂部,引入這個(gè)包:

import '@babel/polyfill'

保存代碼,再次進(jìn)行打包查看結(jié)果,可以發(fā)現(xiàn)打包后的 main.js 里面,有了很多代碼來幫助實(shí)現(xiàn)比如 Promisemap 這些新特性??匆幌?main.js 文件的大?。?/p>

怎么在Webpack4中利用Babel處理ES6語法

859KB,再看一下沒有使用 polyfill 之前的 main.js 大?。?/p>

怎么在Webpack4中利用Babel處理ES6語法

只有4.36KB,使用 polyfill 之后文件變大了很多,這說明了 polyfill 使用了非常多的代碼來填入新特性。
但是,index.js 里只使用了 Promisemap,其它的新特性都沒用,能不能把那些沒用到的實(shí)現(xiàn)方法都剔除了呢? 可以,給 preset-env 增加一個(gè) useBuiltIns 配置:

rules: [{
 test: /\.js$/,
 exclude: /node_modules/, // 排除該目錄下的所有代碼
 loader: 'babel-loader',
 options: {
  'presets': [
   ['@babel/preset-env', {
    useBuiltIns: 'usage'
   }]
  ]
 }
}]

useBuiltIns: 'usage' 的意思就是說,當(dāng)使用 polyfill 往低版本瀏覽器填入一些不存在的特性時(shí),不是全部都填入,而是根據(jù)業(yè)務(wù)代碼使用到的特性去選擇填入,比如這里使用了 Promisemap,那就只填入這兩個(gè),其它的都不用。 再次打包查看結(jié)果:

怎么在Webpack4中利用Babel處理ES6語法

可以看到,main.js 的大小只有 138KB了。

這里還可以配置一些其它的參數(shù),比如 targets 參數(shù):

rules: [{
 test: /\.js$/,
 exclude: /node_modules/, // 排除該目錄下的所有代碼
 loader: 'babel-loader',
 options: {
  'presets': [
   ['@babel/preset-env', {
    useBuiltIns: 'usage',
    targets:{
     edge: '17', // edge高于17的版本
     firefox: '60', // firefox 高于60的版本
     chrome: '67' // chrome高于67的版本
    }
   }]
  ]
 }
}]

targets 是指打包會(huì)運(yùn)行在什么樣的瀏覽器,這有三個(gè)瀏覽器,并注明了最低版本。在打包的過程中,babel 會(huì)去看這些瀏覽器對 ES6 代碼的支持情況,是否有必要進(jìn)行語法轉(zhuǎn)換、填入一些新特性。 運(yùn)行打包命令查看結(jié)果:

怎么在Webpack4中利用Babel處理ES6語法

上述內(nèi)容就是怎么在Webpack4中利用Babel處理ES6語法,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)站名稱:怎么在Webpack4中利用Babel處理ES6語法-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://aaarwkj.com/article36/ihjpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、搜索引擎優(yōu)化網(wǎng)站維護(hù)、虛擬主機(jī)、建站公司、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
全国精品免费视频久久久| 高级会所口爆视频在线播放视频| 日本欧美三级一二三区| 亚洲黄色av在线免费观看| 一区二区三区毛片免费| 国产国产乱老熟女视频网站| 闫国产一区二区三区色噜噜| 国产饥渴熟女在线三区| 国产,欧美,日韩,日日骚| 色琪琪原网另类欧美日韩| 97在线观看视频在线观看| 91麻豆精品一区二区三区| 国产成人综合久久三区北岛玲| 白天躁晚上躁天天躁在线| 久久中文人妻丝袜不卡| 亚洲男人av天堂午夜在| 国产91人妻精品一区二区三区 | 99精品欧美日韩在线播放| 午夜少妇久久久久久久久| 日韩欧美亚洲福利在线| 一区二区三区高清av在线| 日本道加勒比二三五区视频| 夜夜操狠狠操天天摸| 日操夜操天天操夜夜操| 少妇人妻系列中文在线| 亚洲av一本岛在线播放| 久久中文字幕一区二区三区| 97日韩在线免费视频网站| 亚洲国产中文字幕高清| 一区二区三区亚洲精品在线| 日韩黄色一级片在线观看| 亚洲综合精品久久久一区| 国产亚洲欧美精品久久久久久| 免费在线观看欧美色妇| 一区二区三区精品人妻| 国产欧美日韩综合91| 日本高清不卡中文字幕| 国产女人和拘做受视频| 亚洲综合色一区二区三区四区| 国产成人一区二区三区影| 欧美日韩久久亚洲精品|