loader 用於轉換某些類型的模塊,而插件則能夠用於執行範圍更廣的任務。包括:打包優化,資源管理,注入環境變量。html
build
指令必須手動刪除上一次打包的資源,若是不刪除上一次打包的資源文件有可能被遺留下來(好比上一次有一張圖片,此次打包這張圖片被刪除了,那麼就會被遺留以下圖:) CleanWebpackPlugin
能夠幫助咱們打包以前自動刪除對應的文件
yarn add clean-webpack-plugin -D
index.html
,可是此時打包文件夾中是沒有這個文件的,咱們能夠手動添加一個 index.html
,也能夠經過 HtmlWebpackPlugin
幫咱們自動生成一個index.html
yarn add html-webpack-plugin -D
<% 變量 %>
這個是EJS
模塊填充數據的方式 打包結果: webpack
內置的插件(不須要單獨安裝)。 如上添加模板的時候此時咱們添加一個 favicon.ico
以下圖BASE_URL
的定義,此時就能夠配置一個全局常量以下圖: DefinePlugin
解決了打包報錯的問題,可是運行起來發現圖表並無顯示以下圖 緣由很簡單,先看打包後的 index.html
文件 他是在當前文件夾下找圖標文件,可是打包的文件中並無吧對應的圖標文件複製進來,此時可使用 CopyWebpackPlugin
插件將制定文件夾的文件所有複製進來。
yarn add copy-webpack-plugin -D
patterns
中,該參數的值對應的是個數組能夠添加多條from、to、glocOptions
from
:從那個文件夾開始賦值to
: 複製到那個位置,不設置默認複製到打包目錄下glocOptions
:設置一些額外的選項,好比 index.html
不須要再複製應爲 HtmlWebpackPlugin
已經生成了對應的文件了