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

vue 项目打包更新后,界面未刷新时js与css资源加载404,监听资源文件404后自动重新加载页面。

问题

vue 项目打包更新(生成环境)后,界面未刷新时js与css资源加载404,如图:
在这里插入图片描述

期望

希望可以监听到资源文件加载404时,刷新界面,解决打包后由于文件名的变化导致点击旧页面时 JS 和 CSS 文件出现 404 错误。

解决方法

使用方法下面方法来监听资源文件加载异常

window.addEventListener('error', this.fileLoadingError, true)

在这里插入图片描述

代码

app.vue

<script>
...
created() {
	...
	window.addEventListener('error', this.fileLoadingError, true)
	...
},
beforeDestroy() {
	window.removeEventListener('error', this.fileLoadingError) // 关闭刷新浏览器销毁监听
},
methods: {
	fileLoadingError(event) {
		// 判断是否存在,存在跳过 , 不存在刷新
		const RefreshAccessingResources = sessionStorage.getItem('fileLoadingError')
		if (RefreshAccessingResources) { // 这里是为了防止一直刷新,所有只要存在了就不能刷新了
	    	return
	    }
	    const arr = event.target.src.src.split('.')
	    const str = arr[arr.length - 1]
	    if (event.target.tagName === 'SCRIPT' && (str === 'js' || str === 'css')) { // 判断是脚本并且文件后缀是js与css
	        sessionStorage.setItem('fileLoadingError', 1) // 刷新获取最先资源
	        window.location.reload()
	    }
	},
}
</script>

http://www.kler.cn/news/327922.html

相关文章:

  • 解决 Macos下 Orbstack docker网络问题
  • 【工具-VMware Workstation-ubuntu】
  • UDP通信
  • Linux 如何检测一个程序的最大内存使用值?
  • 普通人未来还有哪些赚钱机会?
  • JAVA JVM常见面试题
  • OJ在线评测系统 后端 判题机模块预开发 架构分析 使用工厂模式搭建
  • CSS点击事件穿透
  • 中心节点服务,远程集中管理,降低边缘设备管理成本的智慧园区开源了。
  • 【10000字pandas数据可视化超全笔记整理】Numpy Pandas | 常用API介绍 | 缺失值处理 matplotlib数据可视化介绍
  • 鸿蒙NEXT开发-界面渲染(条件和循环)(基于最新api12稳定版)
  • Chromium 用户数据目录User Data 初始化过程c++
  • Apache POI快速入门
  • leetcode刷题day31|贪心算法Part05重叠区间问题(56. 合并区间、738.单调递增的数字、968.监控二叉树)
  • Unity NetCode 客户端连接不上服务器,局域网模式 Failed to connect to server.
  • 【微信小程序开发】入门Day2 —— 从视图逻辑到配置请求全方位解析
  • 遍历递归数结构,修改里的disabled值
  • 【JVM】基础篇
  • 2024ICPC网络赛2记录:CK
  • 企业数字化转型指南:基于TOGAF框架的系统化战略解读
  • Junit 5 - 理解Mockito,提高UT 覆盖率
  • 景联文科技精准数据标注:优化智能标注平台,打造智能未来
  • LiveQing视频点播流媒体RTMP推流服务功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大
  • 【Redis技术进阶之路】「原理分析系列开篇」探索事件驱动枚型与数据特久化原理实现(数据持久化的实现AOF)
  • linux远程桌面:xrdp 安装失败
  • Android 长按文本弹出输入框
  • 《野蛮时代》数据分析项目实战——报告
  • 基于muduo库实现protobuf协议的通信详解
  • 叶绿素透射反射率与波长
  • pr2024安装包及新手入门讲解