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)可能效果更好的特定解决方案,请参见下面的一些答案。