当前位置: 首页 > Web前端 > vue.js

vue-cli3打包优化的splitchunks

时间:2023-03-31 21:46:22 vue.js

dllplugin可以提取常用库,包括vue、vuex等库。但是antdesignvue是按需加载的,随时可能引入新的组件,显然不适合放到dll中。直接用其他文件进入vendor.js会很大,需要单独解压。我决定在config.optimization.splitChunks中配置它,如下所示:cacheGroups:{common:{name:'chunk-common',//打包文件名chunks:'initial',//minChunks:2,maxInitialRequests:5,minSize:0,priority:1,reuseExistingChunk:true},vendors:{name:'chunk-vendors',test:/[\\/]node_modules[\\/]/,chunks:'initial',priority:2,reuseExistingChunk:true,enforce:true},antDesignVue:{name:'chunk-ant-design-vue',test:/[\\/]node_modules[\\/]ant-design-vue[\\/]/,chunks:'initial',优先级:3,reuseExistingChunk:true,enforce:true}}})}}}关于webpack4的splitChunks的知识还是很多的,下面简单介绍一下。splitChunks常用参数name打包chunk的名称测试匹配模块trophy放入此缓存组chunks代码块类型必须选择三个之一:"initial"(初始化)|“全部”(默认为全部)|“async”(动态加载)默认情况下,Webpack4只会拆分按需加载的代码。如果我们需要配置初始加载的代码也加入到代码拆分中,可以设置为'all'体积最小的新代码块minChunks(默认为1)分裂前,该代码块最少应该被引用的次数maxInitialRequests(默认为3)一个条目的最大并行请求数maxAsyncRequests(默认为5)的按需加载时的最大并行请求数reuseExistingChunk如果当前chunk已经被拆分过,它会重用chunk而不是重新创建一个enforce告诉webpack忽略splitChunks.minSize、splitChunks.minChunks、splitChunks.maxAsyncRequests和splitChunks.maxInitialRequests,始终为此缓存组创建块