使用require.js我注意到浏览器通常会缓存依赖项,即使我强制页面完全重新加载(命令+ shift + R)也不会更新。
为了始终拥有更新的文件,我让require.js要求在url后添加'?datestamp'的文件。这种方法的唯一问题是断点在重新加载后不会保留在chrome或firebug中,这使得调试变得很痛苦。
你有什么建议吗?
答案 0 :(得分:16)
实际上你可以做一些事情:
要么完全禁用浏览器缓存来测试它。例如,一种简单的方法Chrome将打开一个隐身窗口(CTRL + SHIFT + N),类似于Firefox中的私密浏览模式。但是,您应该在此处列出更理想的解决方案:Disabling Chrome cache for website development
或者您指示您的网络服务器不为javascript或某些javascript文件发送缓存标头。一种可能性是使用mod_expires和apache。
答案 1 :(得分:9)
我用过
require.config({ urlArgs: "v=" + (new Date()).getTime() });
这解决了我的问题,但你必须记得在转到制作之前删除它。
答案 2 :(得分:3)
我认为你可以在required.config上使用urlArgs
引自http://requirejs.org/docs/api.html#packages urlArgs:附加到RequireJS用于获取资源的URL的额外查询字符串参数。在未正确配置浏览器或服务器时缓存半身像最有用。 urlA
的缓存区设置示例