中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

optimization怎么在webpack4中使用

發布時間:2021-03-23 15:40:03 來源:億速云 閱讀:427 作者:Leah 欄目:web開發

今天就跟大家聊聊有關optimization怎么在webpack4中使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

optimization總結

minimize

默認為true,效果就是壓縮js代碼。

minimizer

可以自定義UglifyJsPlugin和一些配置,默認的壓縮為uglifyjs-webpack-plugin

//比如在構建的時候,希望新增css的壓縮
minimizer:
 mode === "development"
  ? []
  : [
    new UglifyJsPlugin({
     cache: true,
     parallel: true,
     sourceMap: mode === "development"
    }),
    new OptimizeCSSAssetsPlugin()
   ]

runtimeChunk

默認為false,runtime相關的代碼(各個模塊之間的引用和加載的邏輯)內嵌入每個entry

true:對于每個entry會生成runtime~${entrypoint.name}的文件。

optimization怎么在webpack4中使用

'single': 會生成一個唯一單獨的runtime.js文件,就是manifest

optimization怎么在webpack4中使用

multiple:和true一致。name:{}:自定義runtime文件的name

optimization怎么在webpack4中使用

optimization怎么在webpack4中使用

noEmitOnErrors

默認為true,編譯錯誤的時候是否不生成資源。

namedModules,namedChunks

development默認都為true,production默認為false,選擇是否給modulechunk更有意義的名稱。

nameModules:true這里會顯示路徑

optimization怎么在webpack4中使用

nameModules:false直接采用索引自增

optimization怎么在webpack4中使用

namedChunks:true

optimization怎么在webpack4中使用

namedChunks:false采用索引

optimization怎么在webpack4中使用

moduleIds

一般不建議配置namedModules,namedChunks
針對module的配置,這里會取hashed

optimization怎么在webpack4中使用

針對chunk的配置,特別是異步代碼一般會采用@vue-cli3推薦的插件

optimization怎么在webpack4中使用

removeAvailableModules,removeEmptyChunks,mergeDuplicateChunks,flagIncludedChunks

這4個參數構建默認都是true,主要是用于構建優化,不需要改,基本就是字面意思。

splitChunks

主要就是根據不同的策略來分割打包出來的bundle
默認配置:

optimization怎么在webpack4中使用

1.chunks

optimization怎么在webpack4中使用

async(默認)

splitChunks:{
  chunks:'async'//分割異步打包的代碼,
}

打包出b和vue兩個chunk。

optimization怎么在webpack4中使用

all:

splitChunks:{
  chunks:'all',//同時分割同步和異步代碼,推薦。
  cacheGroup:{//默認的規則不會打包,需要單獨定義
   a: {
    test: /a\.js/,
    chunks: "all",
    name: "a",
    enforce: true
   }
  }
}

optimization怎么在webpack4中使用

initial

splitChunks:{
  chunks:'initial'//也會同時打包同步和異步,但是異步內部的引入不再考慮,直接打包在一起,會將vue和b的內容直接打包成chunk,
  cacheGroup:{//默認的規則不會打包,需要單獨定義
   a: {
    test: /a\.js/,
    chunks: "all",
    name: "a",
    enforce: true
   }
  }
}

optimization怎么在webpack4中使用

2.name
分割的js名稱,默認為true,返回
${cacheGroup的key} ${automaticNameDelimiter} ${moduleName},可以自定義。

3.minChunks
最小公用模塊次數,默認為1

4.minSize,maxSize,maxAsyncRequests(按需加載時候最大的并行請求數),maxInitialRequests(一個入口最大的并行請求數)
都為字面意思,一般不建議改。

5.cacheGroups
緩存策略,默認設置了分割node_modules和公用模塊。內部的參數可以和覆蓋外部的參數。
test 正則匹配文件
priority 優先級
reuseExistingChunk是否復用存在的chunk

  cacheGroup:{
   a: {
    test: /a\.js/,//匹配規則
    minChunks:2,//重寫公用chunks的次數
    chunks: "all",
    name: "a",//重寫文件名稱
    enforce: true //強制生成
   }
  }

看完上述內容,你們對optimization怎么在webpack4中使用有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新巴尔虎左旗| 房山区| 瑞安市| 道孚县| 南宁市| 云安县| 淮北市| 龙泉市| 航空| 梁山县| 昌黎县| 噶尔县| 百色市| 清水县| 普兰店市| 华亭县| 望都县| 微山县| 正阳县| 壤塘县| 乌兰县| 大石桥市| 洛阳市| 麻城市| 中江县| 兴文县| 古蔺县| 高密市| 广元市| 霞浦县| 湖北省| 桐庐县| 青龙| 林周县| 乳山市| 泉州市| 土默特左旗| 和静县| 民乐县| 长春市| 广宁县|