当前位置: 首页 > article >正文

vue前端更新后需要清空缓存

场景:前端vue3网站项目使用wepack打包后进行部署,但是用户浏览器访问网站时加载了缓存,导致没有及时更新。

现在需要一个解决方案保证每次重新打包部署后,用户浏览器访问网站重新加载js和css,但是未更新还是继续使用缓存加快加载速度。

1、配置nginx不缓存index.html

index.html文件很小,不缓存的话也不会造成很大影响

server {
    listen 80;
    server_name yourdomain.com;
    location / {
        try_files $uri $uri/ /index.html;
        root /yourdir/;
        index index.html index.htm;
 
        //对html htm文件设置永远不缓存
        if ($request_filename ~* .*\.(?:htm|html)$) {
            add_header Cache-Control "private, no-store, no-cache, must-revalidate, proxy-    revalidate";
        }     
      }
}

2、配置vue.config.js项目webpack为js和css文件增加引用版本号

打包后index.html中引用js和css文件都会带上 ?v=时间戳 

这样js和css更新后因为时间戳不一样,会重新加载文件

const timestamp = new Date().getTime()

module.exports = defineConfig({
    css: {
        extract: {
            // 修改输出css目录名及文件名
            filename: `css/[name].css?v=${timestamp}`,
            chunkFilename: `css/[name].css?v=${timestamp}`,
        }
    },
    configureWebpack: {
        output: {
            // 修改输出js目录名及文件名
            filename: `js/[name].js?v=${timestamp}`,
            chunkFilename: `js/[name].js?v=${timestamp}`,
        },
    },
})


http://www.kler.cn/a/281759.html

相关文章:

  • python学习_2.去除字符strip方法
  • ssh无法连接Ubuntu
  • 任务管理功能拆解——如何高效管理项目任务?
  • 【qt】控件3
  • 【微软:多模态基础模型】(4)统一视觉模型
  • SQL面试题——抖音SQL面试题 主播播出时长
  • Omost容器构建教程
  • 地平线—征程2(Journey 2-J2)芯片详解(15)—看门狗+温度传感器
  • [解决]Invalid configuration `aarch64-openwrt-linux‘: machine `aarch64-openwrt
  • Docker运维级指令
  • Spring Boot(快速上手)
  • 【Material-UI】Select组件中的Native Select与TextField详解
  • NXP的33771采集的隐藏bug
  • 代码随想录算法训练营第三十五天 | 416. 分割等和子集
  • 华为自研仓颉编程语言测试版上线,计划持续到10月21号
  • 氢能源时代的守护者:氢气传感器在储存与使用中的关键角色
  • 【Linux】第十七章 多路转接(select+poll+epoll)
  • uniapp(微信小程序如何使用单选框、复选框)
  • DevExpress 表格再新增行后滚动条自动移动到新增行
  • 建筑业AI的崛起The Rise of AI and Machine Learning in Construction
  • Android Compose 下拉选择框 ExposedDropdownMenu下拉选择
  • 超越传统:探索Visual Basic在操作系统插件开发的新境界
  • 少儿编程Python系列课程——003python注释
  • Ubuntu 22安装和配置PyCharm详细教程(图文详解)
  • 歌曲分享平台|基于SprinBoot+vue的原创歌曲分享平台系统(源码+数据库+文档)
  • Android实现自定义方向盘-8自定义view的相关问题