国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

webpack4之SplitChunksPlugin使用指南

2024-05-06 15:33:29
字體:
來源:轉載
供稿:網友

寫在前面

前面寫了一篇有關webpack4的不完全升級指南以及在webpack3.x遷移的時候遇到的問題,有興許可以看一下。

0. 參數介紹

先對參數有一個大概的認識,雖然擼了很多遍官方的更新文檔,但是還是去參看了一下新的wbepack源碼,下面是各種參數及含義:

    chunks: 表示顯示塊的范圍,有三個可選值:initial(初始塊)、async(按需加載塊)、all(全部塊),默認為all; minSize: 表示在壓縮前的最小模塊大小,默認為0; minChunks: 表示被引用次數,默認為1; maxAsyncRequests: 最大的按需(異步)加載次數,默認為1; maxInitialRequests: 最大的初始化加載次數,默認為1; name: 拆分出來塊的名字(Chunk Names),默認由塊名和hash值自動生成; cacheGroups: 緩存組。

對于緩存組是一個對象,處了可以有上面的chunksminSizeminChunksmaxAsyncRequestsmaxInitialRequestsname外,還有其他的一些參數:

如果不在緩存組中重新賦值,緩存組默認繼承上面的選項,但是還有一些參數是必須在緩存組進行配置的。

    priority: 表示緩存的優先級; test: 緩存組的規則,表示符合條件的的放入當前緩存組,值可以是functionbooleanstringRegExp,默認為空; reuseExistingChunk: 表示可以使用已經存在的塊,即如果滿足條件的塊已經存在就使用已有的,不再創建一個新的塊。

1. 基本使用

首先,在新版本的webpack會默認對代碼進行拆分,拆分的規則是:

    模塊被重復引用或者來自node_modules中的模塊 在壓縮前最小為30kb 在按需加載時,請求數量小于等于5 在初始化加載時,請求數量小于等于3

小于30kb的模塊不值得再單獨發送一次請求,在很小的模塊的前提下,相比與多次打包,減少請求次數成本要低。

當然也可以不使用默認的配置,比如這樣:

new webpack.optimize.SplitChunksPlugin({  chunks: "all",  minSize: 20000,  minChunks: 1,  maxAsyncRequests: 5,  maxInitialRequests: 3,  name: true)}

上面的代碼就表示,在所有代碼中,引用模塊大小最小為20kb,引用次數最少為1次,按需加載最大請求次數為5,初始化加載最大請求次數為3的所有模塊就行拆分到一個單獨的代碼塊中,name表示代碼的名字,設置為true則表示根據模塊和緩存組秘鑰自動生成。

2. 使用緩存組(Cache Groups)

如果想繼續細分代碼,可以使用緩存組(Cache Groups)。同樣的,緩存組也有默認的配置;緩存組默認將node_modules中的模塊拆分帶一個叫做

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 瑞昌市| 延边| 崇明县| 泸州市| 东至县| 崇信县| 盐津县| 平利县| 永靖县| 会东县| 汉川市| 南华县| 吉林省| 建水县| 常熟市| 黄平县| 玉树县| 东平县| 商丘市| 广东省| 襄汾县| 梅河口市| 松桃| 寿光市| 西峡县| 都兰县| 台前县| 资源县| 桃园县| 台江县| 德惠市| 阜阳市| 丰宁| 明水县| 宁乡县| 巫溪县| 交城县| 香河县| 衡东县| 都兰县| 陕西省|