最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解webpack運(yùn)行Babel教程

 更新時間:2018年06月13日 09:27:51   作者:Fundebug  
這篇文章主要介紹了詳解webpack運(yùn)行Babel教程,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

摘要:Babel是轉(zhuǎn)碼器,webpack是打包工具,它們應(yīng)該如何一起使用呢?

GitHub倉庫: Fundebug/webpack-babel-tutorial

ES6 + IE10 = 語法錯誤!

test.js 使用了ES6的 箭頭函數(shù)

setTimeout(() =>
{
  console.log("Hello, Fundebug!");
}, 100)

由于低版本的瀏覽器沒有支持ES6語法,這就意味著代碼會出錯。例如,在IE 10瀏覽器中,會出現(xiàn)”語法錯誤”:

如果你使用了Fundebug錯誤監(jiān)控服務(wù),則會收到這樣的報錯:

直接使用babel轉(zhuǎn)碼

當(dāng)你使用更高版本的JavaScript語法時,比如ES7,低版本的瀏覽器將無法運(yùn)行。為了兼容低版本的瀏覽器,比如萬惡的IE,我們不得不使用Babel ,將ES6、ES7等高版本代碼轉(zhuǎn)換為ES5代碼。

安裝 babel-cli

sudo npm install --global babel-cli

使用babel命令轉(zhuǎn)碼

babel test.js --out-file compiled.js

轉(zhuǎn)碼之后生成的代碼為compiled.js

setTimeout(function () {
  console.log("Hello, Fundebug!");
}, 100);

可知,箭頭函數(shù)轉(zhuǎn)換成了function,這樣就代碼可以在IE 10等不支持ES6的瀏覽器上正確執(zhí)行了。

廣告:歡迎免費(fèi)試用Fundebug,助您第一時間發(fā)現(xiàn)代碼BUG。

使用webpack運(yùn)行Babel

一般項目中都會使用 webpack 對代碼進(jìn)行打包,比如,將多個js文件打包成1個js文件,這樣可以減少前端的資源請求。因此,我們需要將Babel也集成到webpack中。

安裝webpack

npm install --global webpack

我使用的webpack版本為4.10.0

webpack --version
4.10.0

安裝babel

npm install --save-dev babel-cli babel-preset-env

babel-preset-env 是Babel新版的preset,它可以讓我們 靈活地設(shè)置代碼目標(biāo)執(zhí)行環(huán)境 ,比如只支持各個瀏覽器最新的2個版本,支持IE8及其以上的IE瀏覽器。

安裝babel-loader

npm install --save-dev babel-loader

babel-loader 是webpack的babel插件,它讓我們可以在wepback中運(yùn)行Babel。

配置babel

新增 .babelrc 文件:

{
  "presets": ["env"]
}

配置webpack

新增 webpack.config.js 文件:

module.exports = {
  entry: './test.js',
  output:
  {
    path: __dirname,
    filename: 'bundle.js'
  },
  module:
  {
    rules: [
    {
      test: /\.js$/,
      exclude: /node_modules/,
      loader: 'babel-loader'
    }]
  }
};

可知,我們在webpack中使用了babel-loader插件來運(yùn)行Babel,轉(zhuǎn)換所有的.js代碼(除了node_modules中的代碼)。

使用webpack運(yùn)行babel

webpack --mode production

轉(zhuǎn)換之后的代碼為bundle.js 。bundle.js只有1行代碼,這是因為為我們指定的mode為production,webpack為了壓縮代碼只生成了1行代碼。

參考

webpack 配合babel 將es6轉(zhuǎn)成es5 超簡單實例

Babel入門教程

babel-preset-env: a preset that configures Babel for you

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • bootstrap精簡教程_動力節(jié)點Java學(xué)院整理

    bootstrap精簡教程_動力節(jié)點Java學(xué)院整理

    這篇文章主要介紹了bootstrap精簡教程,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 使用js在layui中實現(xiàn)上傳圖片壓縮

    使用js在layui中實現(xiàn)上傳圖片壓縮

    這篇文章主要介紹了使用js在layui中實現(xiàn)上傳圖片壓縮,layui 是一款采用自身模塊規(guī)范編寫的前端 UI 框架,js上傳圖片壓縮百度有很多方法,,需要的朋友可以參考下
    2019-06-06
  • jquery下onpropertychange事件的綁定方法

    jquery下onpropertychange事件的綁定方法

    用了onchange事件,但是在輸入的時候,用Javascript計算出并填值的那一列并不會響應(yīng)onchange 事件。
    2010-08-08
  • javascript手工制作懸浮菜單

    javascript手工制作懸浮菜單

    這篇文章主要介紹了javascript手工制作懸浮菜單,主要也是想自己練練手,感覺還不錯,這里推薦給大家。
    2015-02-02
  • Bootstrap幻燈片輪播圖支持觸屏左右手勢滑動的實現(xiàn)方法

    Bootstrap幻燈片輪播圖支持觸屏左右手勢滑動的實現(xiàn)方法

    最近在研究用bootstrap搭建網(wǎng)站,Bootstrap能自適應(yīng)pc端和手機(jī)端,并且移動設(shè)備優(yōu)先,適合現(xiàn)如今移動營銷,大家用的設(shè)備基本是觸屏的了,能用滑動交互在小屏幕上體驗會更好,那么如何實現(xiàn)呢?下面小編給大家介紹下bootstrap 手勢滑動輪播圖的實現(xiàn)方法
    2016-10-10
  • 詳解微信小程序的不同函數(shù)調(diào)用的幾種方法

    詳解微信小程序的不同函數(shù)調(diào)用的幾種方法

    這篇文章主要介紹了微信小程序的不同函數(shù)調(diào)用的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • JavaScript 隨機(jī)驗證碼的生成實例代碼

    JavaScript 隨機(jī)驗證碼的生成實例代碼

    這篇文章主要介紹了JavaScript 隨機(jī)驗證碼的生成實例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • layui問題之模擬select點擊事件的實例講解

    layui問題之模擬select點擊事件的實例講解

    今天小編就為大家分享一篇layui問題之模擬select點擊事件的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • TypeScript?類型斷言的幾種實現(xiàn)

    TypeScript?類型斷言的幾種實現(xiàn)

    本文主要介紹了TypeScript?類型斷言的實現(xiàn),有使用關(guān)鍵字as和標(biāo)簽<>兩種方式,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • Promise對象all與race方法手寫示例

    Promise對象all與race方法手寫示例

    這篇文章主要為大家介紹了Promise對象all與race方法手寫示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12

最新評論

大关县| 舟山市| 乐业县| 岫岩| 巢湖市| 陆良县| 神木县| 麻阳| 萨嘎县| 仲巴县| 凤冈县| 恩平市| 德兴市| 台州市| 巩留县| 赫章县| 密山市| 大姚县| 汝城县| 开鲁县| 六枝特区| 太白县| 新泰市| 略阳县| 福安市| 托里县| 抚远县| 蕲春县| 安塞县| 长兴县| 古浪县| 许昌市| 囊谦县| 忻州市| 夏邑县| 渭南市| 郯城县| 炉霍县| 石景山区| 江达县| 新余市|