我在Chrome浏览器中遇到了Angular缓存的烦人问题。每次发布后都会出现此问题。
我已经在HTML中添加了缓存控制设置。
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0">
奇怪的是,在最常用的路线之一上,Chrome使用了旧的main.xxxx.js文件。
<script type="text/javascript" src="main.e782af08b3f281507dba.js"></script>
但是一旦我切换到另一条不太频繁的路线,它就会加载最新的main.xxxxx.js文件。
<script type="text/javascript" src="main.075b8caa48c74ed93f64.js"></script>
每次发布后,我都会遇到这个问题,这不仅让我很烦恼,也让我的客户感到不便。我不能要求他们每次我发布新版本时都清除缓存。
此外,在上次发布中,我已经添加了一个版本更改的检查,如果版本更改,则使用window.reload()重新加载浏览器,它确实可以重新加载。但是一旦它路由到频繁的路径,Chrome就会获取旧的main.js文件。