javascript - 客户端 javascript 文件在刷新时不会在某些浏览器选项卡中更新,但在新选项卡中很好
问题描述
我正在使用 Django 制作一个完整的堆栈应用程序。我在一个名为 logic.js 的文件中编写了一些客户端 Javascript。我注意到有时当我在 logic.js 文件中进行更改然后在浏览器中点击刷新时,浏览器的 logic.js 文件不会更改。但是,如果我在另一个窗口中打开该站点,它会获取更新后的 logic.js 文件。我对浏览器的这种行为感到困惑(如果是浏览器问题)。为什么会这样?
解决方案
是的,那会发生。我通常在模板中添加一个版本,例如:
<script src="{{ STATIC_URL }}app/js/filename.js?v={{ VERSION }}"></script>
每当我发布更新时都会更改版本。这应该强制浏览器获取更新的文件。