美文网首页
webpack 4 升级

webpack 4 升级

作者: 谢大见 | 来源:发表于2018-03-16 09:38 被阅读0次

webpack-cli

现在cli需要单独进行安装

 npm install webpack-cli -D

生产模式和开发模式

事实上,如果你注意npm run build的输出,你会看到一个很好的警告:

The ‘mode’ option has not been set. Set ‘mode’ option to ‘development’ or ‘production’ to enable defaults for this environment.(“mode”选项尚未设置。 将“mode”选项设置为“development”或“production”以启用此环境的默认值。)

打开package.json并填入脚本部分,如下所示:

  "scripts": {
    "dev": "webpack --mode development",
    "build": "webpack --mode production",
  },

splitChunks

4.0中已经删除CommonsChunkPlugin,替换成了splitChunks这里有相关介绍内容

解决方案: 去除 new webpack.optimize.CommonsChunkPlugin,修改为

optimization: {
    runtimeChunk: {
        name: "manifest"
    },
    splitChunks: {
        cacheGroups: {
            commons: {
                test: /[\\/]node_modules[\\/]/,
                name: "vendor",
                chunks: "all"
            }
        }
    }
}

optimization参数介绍:

optimization: {
    splitChunks: {
      chunks: "initial",         // 必须三选一: "initial" | "all"(默认就是all) | "async"
      minSize: 0,                // 最小尺寸,默认0
      minChunks: 1,              // 最小 chunk ,默认1
      maxAsyncRequests: 1,       // 最大异步请求数, 默认1
      maxInitialRequests: 1,    // 最大初始化请求书,默认1
      name: () => {},              // 名称,此选项课接收 function
      cacheGroups: {                 // 这里开始设置缓存的 chunks
        priority: "0",                // 缓存组优先级 false | object |
        vendor: {                   // key 为entry中定义的 入口名称
          chunks: "initial",        // 必须三选一: "initial" | "all" | "async"(默认就是异步)
          test: /react|lodash/,     // 正则规则验证,如果符合就提取 chunk
          name: "vendor",           // 要缓存的 分隔出来的 chunk 名称
          minSize: 0,
          minChunks: 1,
          enforce: true,
          maxAsyncRequests: 1,       // 最大异步请求数, 默认1
          maxInitialRequests: 1,    // 最大初始化请求书,默认1
          reuseExistingChunk: true   // 可设置是否重用该chunk(查看源码没有发现默认值)
        }
      }
    }
  },

相关文章

  • vue+ts

    找到对应配置 升级webpack4

  • Error: Cannot find module 'webpa

    但是,当你升级webpack4 ---->webpack5时,如果你的版本是webpack-cli 4*时,就会报...

  • vue开发中遇到问题总结(2)

    升级webpack4之后,插件 由 extract-text-webpack-plugin 变为 mini-c...

  • webpack 4 升级

    1 html-webpack-plugin 已支持webpack 42 inline-manifest-webpa...

  • webpack 4 升级

    webpack-cli 现在cli需要单独进行安装 生产模式和开发模式 事实上,如果你注意npm run buil...

  • webpack编译优化

    升级 webpack 版本至 4.x 使用 happypack 进行多线程编译 webpack 4.0 发布后 h...

  • webpack3.x升级webpack4不得不说的事

    最近为了某些原因需要升级webpack3到webpack4,于是着手操作了一番,此处已vue-cli为范本1、升级...

  • webpack3 项目升级 webpack4

    由于 vue-cli 2 构建的项目是基于 webpack3,所以只能自己动手改动,至于升级 webpack4之后...

  • webpack4的splitChunks分包

    自从webpack升级到4以来,号称零配置。代码会自动分割、压缩、优化,同时 webpack 也会自动帮你 Sco...

  • 升级webpack4

    一、升级babel7 网上已经有很多不错升级babel7的文章了,这里写下主要步骤 1、一键升级 运行命令行后发现...

网友评论

      本文标题:webpack 4 升级

      本文链接:https://www.haomeiwen.com/subject/rzgcqftx.html