vue 解决每次发版后要清理浏览器缓存

/ javascript / 没有评论 / 1704浏览

一、首先在index.vue文件添加如下代码

<meta http-equiv="pragram" content="no-cache">
<meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="expires" content="0">

二、在根目录下创建vue.config.js文件

将每次打包的文件名都带上时间戳

const path = require("path"); // 获取当前的时间戳
let timeStamp = new Date().getTime();
module.exports = {
  publicPath: "./",
  filenameHashing: false, // 打包的时候不使用hash值.因为我们有时间戳来确定项目的唯一性了.
  // 
  configureWebpack: {    //重点
    output: { // 输出重构 打包编译后的js文件名称,添加时间戳.
      filename: `js/js[name].${timeStamp}.js`,
      chunkFilename: `js/chunk.[id].${timeStamp}.js`,
    }
  },
  css: { //重点.
    extract: { // 打包后css文件名称添加时间戳
      filename: `css/[name].${timeStamp}.css`,
      chunkFilename: `css/chunk.[id].${timeStamp}.css`,
    }
  }
};

注意点: