RequireJS 似乎在内部做一些事情来缓存所需的 javascript 文件。如果对所需文件之一进行更改,则必须重命名该文件才能应用更改。
将版本号作为查询字符串参数附加到文件名末尾的常见技巧不适用于 requirejs <script src="jsfile.js?v2"></script>
我正在寻找一种方法来防止 RequireJS 所需脚本的这种内部缓存,而不必在每次更新时重命名我的脚本文件。
跨平台解决方案:
我现在urlArgs: "bust=" + (new Date()).getTime()
在开发和urlArgs: "bust=v2"
生产期间使用自动缓存破坏,在推出更新的所需脚本后,我增加硬编码版本号。
笔记:
@Dustin Getz 在最近的回答中提到,当 Javascript 文件像这样持续刷新时,Chrome 开发人员工具将在调试期间删除断点。一种解决方法是编写debugger;
代码以在大多数 Javascript 调试器中触发断点。
特定于服务器的解决方案:
有关可能更适合您的服务器环境(例如 Node 或 Apache)的特定解决方案,请参阅下面的一些答案。