webpack 兼容低版本瀏覽器,轉換ES6 ES7語法


ES6,ES7真的太棒了,async +await+Promise,讓我閱讀代碼的時候不用再從左拉到右了(異步太多,一層套一層真的太頭痛)

但是有個問題,打包后低版本瀏覽器運行不了,還有我用了一些混淆插件,不能解析es6的語法,導致混淆打包報錯。

進入正題:ES6轉ES5

1.安裝依賴模塊

npm install babel-polyfill --save-dev
npm install babel-preset-es2015-ie --save-dev
npm install babel-preset-env --save-dev
npm install babel-preset-stage-2 --save-dev

2.在根目錄創建文件 “.babelrc”

touch .babelrc

3.在“.babelrc”寫入配置

{
  "presets": [
    
["env", {
      "modules": false,
      "targets": {
        "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
      }
    }],
    "stage-2"
  ],
  "plugins": ["transform-runtime"],
  "env": {
    "test": {
      "presets": ["env", "stage-2"],
      "plugins": ["istanbul"]
    }
  }
}

4. 修改打包配置文件,通常是“webpack.base.config.js”

****
entry: {
  main: ["babel-polyfill", "./src/main.js"] //重點
},
****


{
  test: /\.js$/,
  loader: 'babel-loader',

  options:{
    presets:["es2015"] //重點
  },
  exclude: /node_modules/
},
****此處省略1萬字

5.修改入口文件“src/main.js”

import 'babel-polyfill' //頂部加入這個
***

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM