Chrome无法识别我的javascript文件中的更改并加载旧代码?

박두준*_*박두준 9 javascript caching google-chrome

我一直坐在这里差不多一个小时来测试我正在建设的网站.因为我想从我的代码中看到新的更改,我重新加载,但它正在重新加载旧的.我打开devetools进行硬重载并强制缓存硬重载,它们都加载我的旧代码.我去隐身模式,它也做了同样的事情.我再次使用devtools来禁用设置中的缓存,并在网络选项卡中检查禁用缓存; 它仍然缓存我的旧代码.用于清除缓存的加载项也不起作用.伙计,我之前没有遇到这个问题,它只发生在昨晚,今天最糟糕.

我现在迷失了,因为chrome没有从我的javascript文件中加载我的新更改.这有解决方案吗?

小智 12

解决此问题的一种方法是强制重新加载资源以避免缓存.您可以使用http get参数修改URL:

更改:

<script src="myscripts.js"></script>
Run Code Online (Sandbox Code Playgroud)

至:

<script src="myscripts.js?newversion"></script>
Run Code Online (Sandbox Code Playgroud)

NEWVERSION可以是任何字符串,因为它会被忽略.一个有用的选项是使用代码的日期或版本.

当我遇到同样的问题并希望确保所有客户端(不仅仅是我自己的浏览器!)运行新版本的代码时,我发现这种解决方法特别有用.

  • 这绝对是一个黑客,因为服务器应该总是向您发送新文件是文件更改。问题应该从服务器解决。 (3认同)