我正在使用 Dojo 1.7 构建一个离线应用程序,使用 Dojo RDD,动态生成表单并将它们存储在缓存中。现在每次当我通过 ajax 获取某些东西时,我都必须删除 dojo 注册表,因为如果我不清除注册表,dojo 会通过 id 绑定小部件,这将导致解析 dojo 小部件时出现问题,因为它们的 id 已经存在于小部件注册表中,但是当我每次都清除注册表时它会导致另一个问题。一切正常,但结果内容仅在单击页面上的任何位置时出现。与以下描述相同:
但是,在这种情况下,这个问题出在 Chrome 上。
并且上面 url 中提供的解决方案在这种情况下不起作用。
经验:
//在某些情况下,注册表是析构函数不被调用。
dojo.xhrGet({
url: serverUrl,
content: {},
load: function(result) {
//destroying widget registry.(before any parsing)
dijit.registry._destroyAll();
// here is html processing.
},
error: function(error) {
utility.handleException(error);
}
});