使用require.js缓存时进行调试

时间:2012-02-13 09:52:11

标签: javascript caching browser requirejs

使用require.js我注意到浏览器通常会缓存依赖项,即使我强制页面完全重新加载(命令+ shift + R)也不会更新。

为了始终拥有更新的文件,我让require.js要求在url后添加'?datestamp'的文件。这种方法的唯一问题是断点在重新加载后不会保留在chrome或firebug中,这使得调试变得很痛苦。

你有什么建议吗?

3 个答案:

答案 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

的缓存区设置示例
相关问题