【发布时间】:2011-11-07 19:37:26
【问题描述】:
我刚刚将我的应用程序升级到 Rails 3.1。我有一个相当复杂的 JavaScript 代码库,并选择将它连接成一个 .js.coffee 文件,由 Sprockets 编译。每隔一段时间,我就会对我的一个 CoffeeScript 文件进行更改,刷新页面,然后发现我的更改没有得到反映。查看 Chrome 调试器,我注意到没有从服务器读取文件(“网络”选项卡在相应文件上显示“(来自缓存)”)。这似乎是随机发生的,这使得开发非常非常令人沮丧。我找到的唯一解决方案是清除浏览器缓存或重新启动浏览器。
有什么想法吗?我尝试在我的 javascript_include_tag 调用中打开 :debug ,但得到了相同的结果。事实上,当我有多个标签时,似乎唯一返回“(从缓存)”的资产就是我改变的那些!这有点讽刺。
【问题讨论】:
-
您是否尝试按住
shift并点击重新加载?我相信这应该重新加载页面而不会命中缓存。 -
Chrome 19 和 Rails 3.2 仍然存在问题。即使缓存控制标头包含 must-revalidate,页面也是从缓存中提供的(有时)。
标签: javascript ruby-on-rails ruby coffeescript