许多情况下,发行版中存在较小的javascript更新时,用户浏览器无法获取它们。
Chrome等浏览器具有javascript的缓存属性。因此,页面一旦打开,就会对其进行缓存。 chrome仅在检测到重大变化时才会重新加载。
发布后,我们通常会从客户那里获得他们看不到预期的票证,原因仅仅是他们所拥有的js很旧。我们建议他们使用的简单解决方案是尝试通过Ctrl + Shift + R强制重新加载。只是刷新页面不起作用。
是否可以通过任何方式让chrome知道它不必使用缓存版本?
答案 0 :(得分:1)
浏览器级缓存是为了减少网络负载并提高性能而设计的,但有时并不如您所愿。
通常,对于这种情况,我在文件名中使用版本控制。我将文件命名为myfile_v1.js
,并在每个发行版中保持递增。这样可以确保每当我对js
代码进行更改时,客户端都会提取最新的更改,因为浏览器将无法在其本地缓存中找到它。
答案 1 :(得分:0)
有很多方法可以做到这一点,更常见的是:
<script src="./myscript.js?v=1.0 />
时添加一个get参数