摘要:運行該語句會執行如下步驟使用進行文件壓縮。設置環境變量,觸發某些包,以不同的方式進行編譯。在原始的源碼中執行查找和替換操作。等同于表示任何出現的地方都會被替換為。提供函數用來合并配置對象當文件小于限制,會返回。
選項
1.devtool:通過在瀏覽器調試工具(browser devtools)中添加元信息(meta info)增強調試。
2.resolve.alias:創建 import 或 require 的別名,來確保模塊引入變得更簡單。取別名時在給定對象的鍵后的末尾添加 $,表示精準匹配,詳見文檔
3.resolve.extensions:自動解析確定的擴展,能夠使用戶在引入模塊時不帶擴展。
4.module.rules.options:傳遞給loader的參數。
命令語句webpack -p與webpack --optimize-minimize --define process.env.NODE_ENV=""production""等效。運行該語句會執行如下步驟:
使用 UglifyJsPlugin 進行 JS 文件壓縮。
運行LoaderOptionsPlugin。
設置 NodeJS 環境變量,觸發某些 package 包,以不同的方式進行編譯。
webpack內置插件1.UglifyJsPlugin:運行 UglifyJS 來壓縮輸出文件。在命令行中指定 --optimize-minimize,或在 plugins 配置中添加使用。
2.DefinePlugin:在原始的源碼中執行查找和替換操作。
--define process.env.NODE_ENV=""production""等同于
plugins:[ new webpack.DefinePlugin({ "process.env.NODE_ENV": JSON.stringify("production") }) ]
表示任何出現 process.env.NODE_ENV的地方都會被替換為"production"。
3.HotModuleReplacementPlugin:webpack的內置HMR(模塊熱替換)插件。
4.CommonsChunkPlugin:是一個可選的用于建立一個獨立文件(又稱作 chunk)的功能,這個文件包括多個入口文件的公共模塊。通過將公共模塊拆出來,最終合成的文件能夠在最開始的時候加載一次,便存起來到緩存中供后續使用。這個帶來速度上的提升。new webpack.optimize.CommonsChunkPlugin(options)
5.NoEmitOnErrorsPlugin:在編譯出現錯誤時,使用 NoEmitOnErrorsPlugin 來跳過輸出階段。這樣可以確保輸出資源不會包含錯誤。
插件1.html-webpack-plugin:用于生成一個html5文件,將輸出的webpack包通過script標簽插入body中。若輸出的webpack中包含任何的css資源,則這些CSS將通過標簽插入html的head中。
2.clean-webpack-plugin:用于在構建之前刪除/清理你的構建文件夾。
3.webpack-merge:提供merge函數用來合并配置對象
url-loaderurl-loader當文件小于限制,會返回DataURL??蓚鬟flimit,mimetype,prefix三個參數。
為什么可以傳遞nameurl-loader的limit參數:如果文件大于限制(以字節為單位),則使用file-loader,并將所有參數傳遞給它。默認為無限制。
因此可以在options里面寫上file-loader的一些參數,比如name
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/91384.html
摘要:引言最近在學習,發現好多知識點,之前一點都沒有接觸過,如等等。使用本地安裝,會存于文件夾內與屬性內,更方便項目文件遷移以及協同開發等情況。 引言 最近在學習webpack,發現好多知識點,之前一點都沒有接觸過,如babel、core-js、browserslist等等。以前習慣了使用cli構建項目,很多東西不用考慮,拿來就用,這樣的碼農是不會有能力提升的,必須了解更多的知識點,才能成為...
摘要:新搭建的個人博客,本文地址學習筆記環境搭建本文的書寫環境為,之后會補充下的差異創建學習目錄初始化項目根據相關提示完善信息,入口文件安裝相關包,并且使用也就是支持,需要包,因為我之前做個一些相關項目,所以部分包已經全局安裝,比如等等,大家 新搭建的個人博客,本文地址:React學習筆記1:環境搭建 本文的書寫環境為mac,之后會補充windows下的差異 1、創建學習目錄 mkdir l...
摘要:前言在上一篇文章中我介紹了學習前的準備工作,下面開始的學習。目標一般我們接觸到的關于的文章,都是以解讀官方文檔為主,而且是針對單頁面項目的應用。我先在假設要做一個多頁面應用,該如何去通過打包。 前言 在上一篇文章中我介紹了學習webpack前的準備工作,下面開始webpack的學習。 *創建webpack-demo文件夾 $ mkdir webpack-demo $ cd webpac...
摘要:前言在上一篇文章中我介紹了學習前的準備工作,下面開始的學習。目標一般我們接觸到的關于的文章,都是以解讀官方文檔為主,而且是針對單頁面項目的應用。我先在假設要做一個多頁面應用,該如何去通過打包。 前言 在上一篇文章中我介紹了學習webpack前的準備工作,下面開始webpack的學習。 *創建webpack-demo文件夾 $ mkdir webpack-demo $ cd webpac...
閱讀 2081·2023-04-25 19:03
閱讀 1230·2021-10-14 09:42
閱讀 3411·2021-09-22 15:16
閱讀 951·2021-09-10 10:51
閱讀 1566·2021-09-06 15:00
閱讀 2405·2019-08-30 15:55
閱讀 489·2019-08-29 16:22
閱讀 896·2019-08-26 13:49