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

jen*_*ent 3 extjs extjs4

这让我疯了.

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

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

我的app.js中有这个代码:

Ext.Loader.setConfig({
  enabled: true,
  disableCaching: false
});
Run Code Online (Sandbox Code Playgroud)

编辑:鸡肉和鸡蛋情景:

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

无论如何围绕它?

Dav*_*rek 5

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

  1. about:config在Firefox中转到" "并搜索" cache".
  2. 设置browser.cache.offline.enablefalse(双击它)
  3. 设置network.http.use-cachefalse
  4. 如果您使用ext-all-dev.js,请设置extensions.firebug.cache.responseLimit高于它,以确保您可以在Firebug中查看所有源.

执行此操作后,您可能需要重新启动并清除缓存.但是,Firefox会在每次加载页面时拉出最新的源代码(F5),并且在Firebug中会出现断点.

如果这是不可接受的,您还可以临时debugger;在您的代码中插入语句,这些语句将充当断点.将它们放在ifs中作为条件断点.