调试EXTJS 4时,最简单的方法是确保浏览器缓存被清除

时间:2012-07-12 10:03:03

标签: extjs extjs4

这让我疯了。

每当我做出改变时,我都必须确保浏览器加载最新的javascript包含(相同的行为chrome和FF)......

ctrl + f5无效,我必须手动清除浏览器缓存 - 这是一场噩梦

我在app.js中有这段代码:

Ext.Loader.setConfig({
  enabled: true,
  disableCaching: false
});

编辑:Chicken&鸡蛋情景:

  • 为了能够在FF或chrome中设置断点,您需要 打开缓存(参见上面的代码),以便'_dc'查询字符串 参数未添加到脚本文件
  • 但是你总是得到一个缓存副本,所以你不会看到你的变化 无论如何
  • 如果您关闭缓存,则无法设置断点,因为浏览器将其视为新网址

无论如何围绕它?

4 个答案:

答案 0 :(得分:5)

出于同样的原因,我关闭了缓存断路器。我的解决方案是完全关闭Firefox的缓存。 (这是一台开发机器,所以我根本不需要它)

  1. 在Firefox中转到“about:config”并搜索“cache”。
  2. browser.cache.offline.enable设置为false(双击它)
  3. network.http.use-cache设为false
  4. 如果您使用ext-all-dev.js,请将extensions.firebug.cache.responseLimit设置为高于它,以确保您可以在Firebug中查看所有来源。
  5. 执行此操作后,您可能需要重新启动并清除缓存。但是,每次加载页面时,Firefox都会提取最新的源代码(F5),并且Firebug中的断点会被点击。

    如果这是不可接受的,您还可以暂时将debugger;语句插入到代码中,这些语句将充当断点。将它们放在if中以充当条件断点。

答案 1 :(得分:2)

使用Chrome。按F12打开“开发人员工具”窗口。然后右键单击浏览器刷新图标。您现在应该有以下选项:

  • 正常重新载入
  • Hard Reload
  • 清空缓存和硬重新载入

单击“清空缓存和硬重新加载”,这应该可以解决问题。

答案 2 :(得分:1)

你可以做几件事:

  • 使用console.log()调试所需信息,而不是在断点处停止。

  • 在应用的开头添加alert(),并在暂停时将断点设置为已加载的文件。

答案 3 :(得分:0)

我正在为FireFox和Chrome使用Web Developer扩展程序来快速启用/禁用/清除缓存。