浏览器缓存 - 版本控制文件 - 但如果浏览器使用旧版本会怎么样?

时间:2015-08-14 09:20:43

标签: javascript caching browser browser-cache

假设我有一个JavaScript SPA,它将一个文件X_version1.js加载到浏览器中,该文件将被运行。是什么阻止X_version1.js意外调用X_version0.js中早先在浏览器中缓存的函数?缓存的.js脚本是否被调用,除非它们被明确调用,在什么情况下会发生?

这似乎不太牵强,因为有时我们会使用jQuery的缓存版本,或者其他任何内容,这些版本可能不在最近的服务器请求中加载的.js文件中...

1 个答案:

答案 0 :(得分:1)

缓存不会发生在文件级别发生的方法级别。

所以,如果你有

gridStructure = [{
    defaultCell: { ..., editable: true}
    , cells:[ ...,
        {field: "COLUMNx", name: "Column X"}
    ]
}];

然后浏览器开始了#啊;之前我已经下载过了!我将返回缓存版本。"但是,当您将源更改为:

<script src="X_version0.js"></script>

浏览器之前没有看过该文件,然后去取文件。此时页面中没有任何内容表示加载版本0,因此浏览器不会