VUE的缓存问题

server/2024/12/19 23:20:55/

解决 Vue 缓存问题通常是为了确保用户访问最新版本的应用程序,而不会被浏览器和飞书的缓存所困扰。以下是针对使用 Webpack 和 Vite 脚手架的解决方案:

1. 增加文件指纹 (Hashing)

通过文件名添加 hash,确保文件更新后,文件名发生变化,浏览器会重新加载新文件。

Webpack
  • 在 Webpack 的配置文件vue.config.js中设置 output.filenameoutput.chunkFilename,添加 hash:

module.exports = {configureWebpack: {output: {filename: 'js/[name].[hash].js', // 主文件加 hashchunkFilename: 'js/[name].[hash].js', // 分包文件加 hash},},
};
Vite
  • 默认情况下,Vite 会在构建时为静态资源文件添加 hash,无需额外配置。

  • 如果需要调整输出文件路径或文件名,可在 vite.config.js 中配置:

export default defineConfig({build: {rollupOptions: {output: {entryFileNames: 'assets/js/[name].[hash].js',chunkFileNames: 'assets/js/[name].[hash].js',assetFileNames: 'assets/[ext]/[name].[hash].[ext]',},},},
});

2. 构建时清空构建目录

由于js增加了Hash,因此需要每次build时对构建目录进行清理。

Webpack 的 clean-webpack-plugin
  • 先安装clean-webpack-plugin
npm install clean-webpack-plugin --save-dev
  •  在每次构建时清理旧的构建文件。
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
module.exports = {plugins: [new CleanWebpackPlugin(),],
};

 

Vite 的 build.clean
  • Vite 构建默认会清理输出目录,但可以通过 build.emptyOutDir 来控制。

build: {emptyOutDir: true,
}


http://www.ppmy.cn/server/151563.html

相关文章

ElasticSearch中的深度分页问题

在使用 ElasticSearch 进行搜索时,很多小伙伴会遇到“深度分页”问题。当需要获取大量的分页数据时,查询性能会急剧下降,甚至导致集群负载过高。这篇文章将深入剖析 ElasticSearch 深度分页的成因、危害,并提供一些常用的优化方案…

JavaScript 事件

JavaScript 事件 JavaScript 事件是前端开发中不可或缺的一部分,它们允许开发者创建动态、交互式的网页。本文将深入探讨 JavaScript 事件的概念、用法和最佳实践。 什么是 JavaScript 事件? JavaScript 事件是发生在 HTML 元素上的交互动作。当用户或浏览器执行某些操作时…

Python-基于Pygame的小游戏(滑雪大冒险)(一)

前言:《滑雪大冒险》是一款休闲跑酷类游戏,玩家需要在游戏中与雪崩竞速,同时避开雪地上的各种障碍物,如石头、草丛和冰凌等。游戏的核心玩法是在雪山上滑行,避免被身后的雪崩吞没,并尽可能向前推进。与传统…

supervision - 好用的计算机视觉 AI 工具库

Supervision库是一款出色的Python计算机视觉低代码工具,其设计初衷在于为用户提供一个便捷且高效的接口,用以处理数据集以及直观地展示检测结果。简化了对象检测、分类、标注、跟踪等计算机视觉的开发流程。开发者仅需加载数据集和模型,就能轻…

C# 入门编程

<div id"content_views" class"htmledit_views"><p> 无论你是编程新手&#xff0c;还是想要深化.NET技能的开发者&#xff0c;本文都将为你提供一条清晰的学习路径&#xff0c;从<a href"https://so.csdn.net/so/search?qC%23…

Redis API(springboot整合,已封装)

目录 结构maven导包 pom.xmlapplication.ymlredis 配置类编写Service方法调用示例 结构 maven导包 pom.xml 依赖项主要添加如下 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId…

信息化基础知识——电子商务(山东省大数据职称考试)

大数据分析应用-初级 第一部分 基础知识 一、大数据法律法规、政策文件、相关标准 二、计算机基础知识 三、信息化基础知识 四、密码学 五、大数据安全 六、数据库系统 七、数据仓库. 第二部分 专业知识 一、大数据技术与应用 二、大数据分析模型 三、数据科学 电子商务 大数…

鸿蒙app封装 axios post请求失败问题

这个问题是我的一个疏忽大意&#xff0c;在这里记录一下。如果有相同问题的朋友&#xff0c;可以借鉴。 当我 ohpm install ohos/axios 后&#xff0c;进行简单post请求验证&#xff0c;可以请求成功。 然后&#xff0c;我对axios 进行了封装。对axios 添加请求拦截器/添加响…