站長資訊網
最全最豐富的資訊網站

webpack怎么將es6轉成es5的模塊

配置方法:1、用導入的方法把ES6代碼放到打包的js代碼文件中;2、利用npm工具安裝babel-loader工具,語法“npm install -D babel-loader @babel/core @babel/preset-env”;3、創建babel工具的配置文件“.babelrc”并設定轉碼規則;4、在webpack.config.js文件中配置打包規則即可。

webpack怎么將es6轉成es5的模塊

前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

本教程操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

萬惡的IE遺臭萬年仍然需要填坑

  • ie標準對html/css甚至js的規范簡直相差甚遠,所以,一般要解決的兼容問題很大一部分是為了解決ie的不兼容,雖然目前流行的ES6語法及規范將IE的考慮拋棄掉,默認放棄對IE的治療,但是IE的兼容仍然是個問題!即使IE的使用率已經不到1%的市場占比。
  • 我們使用著舒服的ES6規范但是為IE又很頭疼怎么辦呢?Webpack開發了非常厲害的打包轉換功能:轉ES5!

隨便來個ES6代碼

  • 就寫個let聲明和遍歷:

console.log("webpack 1"); let date = ["hello", "world", "this", "is", "es6", "code"];  ((theDate) => {     theDate.forEach(item => console.log(item)); })(date)
登錄后復制

webpack怎么將es6轉成es5的模塊

這是在Chrome瀏覽器里的結果

webpack怎么將es6轉成es5的模塊

這是在火狐瀏覽器的結果:

webpack怎么將es6轉成es5的模塊

這是ie11瀏覽器的結果:
webpack怎么將es6轉成es5的模塊

完全不出意料哈!我們來轉一轉。

  • 這里我們先做一個修改,用導入的辦法把ES6代碼挪到打包的js代碼文件中:
    原index.js:

console.log("webpack 1"); let fun = () => {     let date = ["hello", "world", "this", "is", "es6", "code"];     date.forEach(item => console.log(item)); } //fun() //結果依然剛才一樣 export default fun;//es6導出函數,es6模塊化知識
登錄后復制

Can’t find @babel/core 問題

  • 以前安裝打包需要的插件或者說是工具包:

npm install babel-core babel-loader babel-preset-es2015 --save-dev #因為是開發測試環境,就加了dev,各自根據需要更改保存參數
登錄后復制

  • 沒錯,因為版本兼容問題,最新的8.x版本babel-loader讀取babel-core發生了改變,因此我們要安裝對應匹配的版本:

#webpack 4.x | babel-loader 8.x | babel 7.x 最新版本 npm install -D babel-loader @babel/core @babel/preset-env #webpack 4.x | babel-loader 7.x | babel 6.x 版本 npm install -D babel-loader@7 babel-core babel-preset-env webpack
登錄后復制

  • 我這里使用的是7.x版本:

webpack怎么將es6轉成es5的模塊

  • 創建babel工具的配置文件:.babelrc,設定轉碼規則

{     "presets": [         "es2015"     ],      "plugins": [] }
登錄后復制

webpack怎么將es6轉成es5的模塊

  • webpack.config.js配置打包規則:

module: {     rules: [{         test: /.js$/,         use: 'babel-loader',         exclude: /node_modules/     }] }
登錄后復制

webpack怎么將es6轉成es5的模塊

  • webpack執行,生成test.html

webpack怎么將es6轉成es5的模塊

  • 瀏覽器的效果:

Chrome

webpack怎么將es6轉成es5的模塊

IE

webpack怎么將es6轉成es5的模塊

代碼成功在IE上運行了

  • 我們再看看打包轉換成的es5長啥樣

webpack怎么將es6轉成es5的模塊

es6轉es5到此結束。

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
国产成人精品一区二区三区无码| 日韩一区二区三区在线| 精品国际久久久久999波多野| 国产成人精品白浆久久69| 香蕉久久综合精品首页| 亚洲国产精品无码久久久久久曰| 日韩在线观看免费| 国产精品美女久久久浪潮av| 国产人妻人伦精品1国产盗摄| 国产chinesehd精品酒店| 亚洲精品一卡2卡3卡三卡四卡| 乱精品一区字幕二区| 久久精品人人槡人妻人人玩| 精品一区二区三区四区| 国精品午夜福利视频不卡麻豆| 窝窝午夜色视频国产精品东北| 久久99热这里只有精品国产| 国产精品无码免费专区午夜| 亚洲国产精品综合久久网络| 日韩高清一级毛片| 国产日韩一区二区三区在线播放| 日韩精品无码免费专区网站| 国产大片91精品免费看3| 国产精品久久久久久久伊一| 国产成人综合久久精品下载| 国产精品免费_区二区三区观看 | 精品欧洲videos| 经典国产乱子伦精品视频| 伊人久99久女女视频精品免| 午夜福利麻豆国产精品| 久久婷婷五月综合色精品| 精品少妇人妻AV无码专区不卡| 久久久久久亚洲精品无码| 久久精品青草社区| 麻豆国产VA免费精品高清在线| 少妇人妻偷人精品视蜜桃| 精品国产18久久久久久| 国产精品va无码免费麻豆| 国产在线91精品天天更新| 日韩免费电影网址| 精品视频在线观看一区二区|