我遇到了关于dojo v1.8.3的问题:当我使用CODE_A:
时require(["dojo/dom", "dojo/domReady!"], function( dom) {
textRegion2CountryInfo = com_ibm_bpm_global.coachView.byControlId(["textRegion2CountryInfo" + ""]).context.binding.get("value");
console.log("regionString:" + textRegion2CountryInfo);
});
而不是CODE_B:
window.onload=function(){
textRegion2CountryInfo = com_ibm_bpm_global.coachView.byControlId(["textRegion2CountryInfo" + ""]).context.binding.get("value");
console.log("regionString:" + textRegion2CountryInfo);
}
有两种不同的结果:CODE_A将在firebug中显示错误消息“ReferenceError:com_ibm_bpm_global”,但CODE_B将显示正确的值。
我认为window.onload和dojo / domReady之间可能存在差异,我用google搜索解决方案,但我仍然不知道,任何帮助都会得到赞赏。 BTW:com_ibm_bpm_global.coachView.byControlId([“textRegion2CountryInfo”+“”])。context.binding.get(“value”)是一个IBPM API,我用它来缓存页面元素中的服务器数据。
参考
http://dojotoolkit.org/reference-guide/1.8/dojo/addOnLoad.html