VUE项目每次打包上线后都有缓存,需要客户清理浏览器缓存怎么办?

提问者:帅平 问题分类:微服务
VUE项目每次打包上线后都有缓存,需要客户清理浏览器缓存怎么办?
VUE
3 个回答
宁愿短发披肩
宁愿短发披肩
第三种方式在打包的时候给文件路径添加一个时间戳。也就是在根目录下创建一个vue.config.js的文件,并添加如下的代码:
const path = require("path");
const webpack = require("webpack");
const timeStamp = new Date().getTime();
module.exports = {
  publicPath: process.env.NODE_ENV === "production" ? "/dist/" : "/",
  // 打包的时候不使用hash值.因为我们有时间戳来确定项目的唯一性了.
  filenameHashing: false,
  // 将构建好的文件输出到哪里
  outputDir: "dist",
  configureWebpack: {
    // 重点
    // 输出重构 打包编译后的js文件名称,添加时间戳.
    output: {
      filename: `js/[name].${timeStamp}.js`,
      chunkFilename: `js/chunk.[id].${timeStamp}.js`
    }
  },
  css: {
    //重点.
    extract: {
      // 打包后css文件名称添加时间戳
      filename: `css/[name].${timeStamp}.css`,
      chunkFilename: `css/chunk.[id].${timeStamp}.css`
    }
  }
};
发布于:2年前 (2023-03-01) IP属地:四川省
ろ身
ろ身
推荐通用的模板
发布于:2年前 (2023-03-01) IP属地:四川省
没你的江山怎么画
没你的江山怎么画
第二种方式:在nginx里面配置不缓存
location = /index.html {
    add_header Cache-Control "no-cache, no-store";
}
发布于:2年前 (2023-03-01) IP属地:四川省
孤岛少女情
孤岛少女情
这种方式也是不推荐的,C端带宽太贵了
发布于:2年前 (2023-03-01) IP属地:四川省
候你多时
候你多时
第一种方式,在index.html里面添加如下的meta信息
<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">
发布于:2年前 (2023-03-01) IP属地:四川省
小xの碎碎念
小xの碎碎念
这种方法不推荐,如果是C端产品的话,这里会消耗大量的带宽及CDN费用,如果是B端项目的话可以这么来操作
发布于:2年前 (2023-03-01) IP属地:四川省
我来回答