vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > Vue打包资源按时间戳

Vue如何实现打包资源按时间戳方式

作者:古辛

这篇文章主要介绍了Vue如何实现打包资源按时间戳方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue打包资源按时间戳

问题

由于默认的Vue打包是基于资源文件的hash模式,但是由于浏览器缓存,在实际发版过程中会出现引用老版本的问题。

解决

修改Vue资源打包,在资源文件后加上打包时间戳,以保证每次发版后,所有资源均为最新,避免缓存引用问题,尽管牺牲掉发版后文件加载的效能问题,但是也解决了潜在的缓存问题。

修改

修改“vue.config.js”文件配置:

const Timestamp = new Date().getTime();

module.exports = {

.......

  css: {
    extract: {
      filename: `css/[name].${Timestamp}.css`,
      chunkFilename: `css/[name].${Timestamp}.css`
    }
  },
  chainWebpack: config => {
    config.output.filename(`js/[name].${Timestamp}.js`)
    config.output.chunkFilename(`js/[name].${Timestamp}.js`)
.......

vue打包添加时间戳,实现更新项目自动清除缓存(webpack/vue-cli打包两种方式)

本来vue打包会自动用chunkhash来解决缓存问题,但是部分浏览器不会自动更新,因此通过增加时间戳不同来实现自动重新加载文件,保持最新的界面。

webpack打包

修改build/webpack.prod.conf.js文件

使用vue-cli打包

修改vue.config.js文件

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文