编辑.js和.css文件并在开发过程中避免缓存的最佳做法是什么?

时间:2017-07-02 12:48:52

标签: javascript html css caching

我经常需要在我的网络应用中编辑我的脚本(js)和样式(css),但是它们会被缓存,因此网站不会反映更改。甚至每次浏览器缓存都不能解决问题。我必须每次更改文件名(对于js或css)才能显示更改,但这真的很烦人。

我相信我在这里错过了一些观点。你能建议吗?

由于

3 个答案:

答案 0 :(得分:1)

刷新页面应该可以在任何浏览器中完成。但是,如果JavaScript / CSS文件链接在动态加载的页面的一部分中,那可能有点棘手。您可以将参数附加到文件名。这不是一个理想的解决方案,但它可以解决问题:

<script type="text/javascript" src="/myscript.js?i=123"></script>

现在,您每次都必须更改参数的值。为此,您必须使用JavaScript链接该文件。类似的东西:

<script>document.write("<script type='text/javascript' src='/myscript.js??v=" + Date.now() + "' /><\/script>");</script>

答案 1 :(得分:1)

ctrl + shift + R cmd + shift + R 以清除Chrome中的浏览器缓存。

您也可以勾选禁用缓存(当DevTools处于打开状态时) chrome选项。

答案 2 :(得分:0)

您可以在.htaccess文件中添加以下代码(假设您不在服务器上使用Windows):

<filesMatch "\.(js|css)$">
  FileETag None
  <ifModule mod_headers.c>
    Header unset ETag
    Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
    Header set Pragma "no-cache"
    Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
  </ifModule>
</filesMatch>