webpack抽离第三方库

66 阅读1分钟
module.exports = {
  //...
  optimization: {
    //分割代码块
    splitChunks: {
      /* 
         initial 入口 chunk,对于异步导入的文件不处理
         async 异步 chunk,只对异步导入的文件处理
         all 全部 chunk
      */
      chunks:'all',
      //缓存分组
      cacheGroups: {
        //第三方模块
        vendor:{
          name:'vendor',// chunk 名称
          priority: 1, //权限更高,优先抽离,数字越大优先级越高
          test:/node_modules/,
          minSize:3, // 大小限制,小于这个值不做打包
          minChunks:1 //最少引用过1次
        },
        // 公共的模块
        common:{
          name:'common',// chunk 名称
          priority: 0, //权限更高,优先抽离,数字越大优先级越高
          minSize:3, // 大小限制
          minChunks:2 //最少引用过2次
        }
        
      },
    },
  },
};