let Version = new Date().getTime();

css: {
  // 是否使用css分离插件 ExtractTextPlugin
  extract: {
    //一种方式,打包后的css 会带版本号,不改变文件名的。
    filename: 'css/[name].css?v=' + Version,
    chunkFilename: 'css/[name].css?v=' + Version,
    //一种方式,每次打包后的css文件名会变更新。
    filename: 'css/[name].[' + Version + '].css',
    chunkFilename: 'css/[name].[' + Version + '].css'
  }
}
,
chaingWebpack:config => {
  config.module
      .rule('images')
      .test(/\.(png|jpe?g|gif|webp)(\?.*)?$/)
      .use('url-loader')
      .loader('url-loader')
      .tap(options => {
        // 修改它的选项...
        options.fallback.options.name = 'img/[name].[ext]?' + Version; //去除图片hash
        options.limit = 1024; //这是字节(Byte)限制,1KB = 1024Byte ,当图片的大小小于 1KB ,则会被转为 base64格式,打包进js文件,大于1KB,则会被打包进 img 文件夹,供链接请求获取。 
        return options
      });
}
configureWebpack: config => {
  config.output.chunkFilename = 'js/[name].[' + Version + '].js' //这种方式适合设备缓存不严重的
  config.output.chunkFilename = 'js/[name].js?v=' + Version    //这种是给打包后的chunk文件加版本号。
}

Logo

前往低代码交流专区

更多推荐