1. 程式人生 > >webpack之重新認知babel-loader

webpack之重新認知babel-loader

前言:

在《 webpack之loader 》中webpack.config.js對babel-loader進行了簡單配置。

這篇文章回到我們之前的webpack專案中,看看如何配置babel。

正文:

回顧之前babel-loader配置

專案目錄:


 package.json 配置。

其中babel-core和babel-loader是核心外掛,babel-preset-env 和 babel-preset-react 是處理程式碼的兩個預設。


如果package.json中相關外掛沒有安裝,請執行 npm install 進行安裝。

配置webpack.config.js如下:


可以看出options引數對應的內容和 .babelrc 中配置完全一致。

編輯app.js內容:


執行npm run dev ,瀏覽器開啟檔案,可以發現 app.js中 箭頭函式 和 jsx語法 均正常編譯。

優化babel-loader配置

1、新增exclude配置

現在我們的所有js檔案中程式碼都會被babel-loader處理(包括import 進來的react和react-dom檔案),不管是否真正需要。

如何讓babel-loader有針對性的處理需要處理的檔案?根據以前文章的介紹,只需在babel-loader的配置下新增配置exclude。


2、新增.babelrc檔案

如果babel-loader下的options配置比較複雜,最好配置.babelrc檔案。

在專案下新建.babelrc檔案,


編輯.babelrc檔案(直接將options對應的內容拿過來就好):


編輯webpack.config.js


增加了.babelrc檔案後,options項即可省略,在執行babel-loader的時候預設會去讀.babelrc中的配置。

執行 npm run build 編譯成功!