项目场景:vue项目更新后清除浏览器缓存
解决方案:build/webpack.prod.conf.js里打包的文件路径添加时间戳
const Version = new Date().getTime()//获取当前时间戳
output: {
path: config.build.assetsRoot,
//添加当前时间戳 Version到打包的js文件中
filename: utils.assetsPath('js/[name].[chunkhash]' +Version+ '.js'),
chunkFilename: utils.assetsPath('js/[id].[chunkhash]' +Version+ '.js')
},
new ExtractTextPlugin({
//添加当前时间戳Version到打包的css文件中
filename: utils.assetsPath('css/[name].[contenthash]' +Version+ '.css'),
allChunks: true,
}),
//html 页面加载脚本的时候给脚本后面加一个时间戳
new HtmlWebpackPlugin({
filename: config.build.index,
template: 'index.html',
inject: true,
hash: version,//添加当前时间戳来清除缓存
minify: {
removeComments: true,
collapseWhitespace: true,
removeAttributeQuotes: true
},
// necessary to consistently work with multiple chunks via CommonsChunkPlugin
chunksSortMode: 'dependency'
}),