我正在修改一个网站的外观(CSS 修改),但由于令人恼火的持久缓存,无法在 Chrome 上看到结果。我尝试过 Shift+ 刷新,但它没有起作用。
我该如何暂时禁用缓存或以某种方式刷新页面,以便能够看到更改?
我正在修改一个网站的外观(CSS 修改),但由于令人恼火的持久缓存,无法在 Chrome 上看到结果。我尝试过 Shift+ 刷新,但它没有起作用。
我该如何暂时禁用缓存或以某种方式刷新页面,以便能够看到更改?
我在Windows系统中使用ctrl + shift + delete组合键,当Chrome对话框弹出时,按下回车键。每次执行此操作时,可以配置需要清除的内容。在这种情况下,无需打开开发工具。
在使用Chromium进行VS Code调试时,我会在我的launch.json
文件中添加一个runtimeArgs
参数--aggresive-cache-discard
。这将清除所有缓存。当我刷新后,代码更改会立即显示。
嘿,如果您的网站正在使用PHP,则请在HTML页面开头放置以下小的PHP代码片段:
//dev versioning - stop caching
$rand = rand(1, 99999999);
现在无论你在脚本或链接元素中加载类似CSS或JS文件的资源,都要通过PHP在URI末尾添加'?'来追加生成的随机值到请求URL中:
echo $rand;
就是这样!不会再有浏览器缓存您的网站了 - 无论是哪种类型。
当然,在发布之前删除您的代码或将$rand设置为空字符串以允许再次缓存。
self.caches.keys().then(keys => { keys.forEach(key => console.log(key)) })
要列出缓存键的名称,请运行:
self.caches.delete('my-site-cache')
按名称删除缓存键(例如,my-site-cache
)。然后刷新页面。
如果在刷新后控制台中看到任何与工作人员相关的错误,则还需要注销已注册的工作人员:
navigator.serviceWorker.getRegistrations()
.then(registrations => {
registrations.forEach(registration => {
registration.unregister()
})
})
<meta name="robots" content="noarchive">