我在我使用的一个 .js
文件上做了更改,但无论我怎么做,flask 始终会从内存缓存中选取文件的最新版本(而不是我的更改版本)。
为了澄清,我有以下结构。一切都始于 foo.html
。
return render_template foo.html
foo.html
里有一个表单,它会向 Flask 传递一些数据,然后返回第二个模板 bar.html
:
return render_template bar.html
这个第二个模板调用了一些 .js
文件,这些文件放置在 static
文件夹中,但是当代码发生变化时它不会更新。
我提到了上面的结构,因为如果将 .js
文件放在 foo.html
而不是 bar.html
上,那么 Flask 会 捕捉到文件的新更改。但在 bar.html
中,Flask 完全忽略了它们。
发生了什么?
唯一有效的方法是在浏览器上点击 "禁用缓存" ,然后重新加载。
"script.js?some_variable=dynamic_value"
。dynamic_value
可以是版本号或文件日期。 - furas.js
文件,显然不能期望每次更改时都重命名文件。 - eleliasCtrl+F5
或Ctrl+R
无法正常工作,则在创建最终版本之前请在浏览器中禁用缓存,或者使用"script.js?some_variable=file_timestamp"
并添加创建函数以生成带参数的 URL。 - furas