[英]Dojo timing issue with dijit/registry and dojo/domReady
我正在Dojo中開發一個一頁應用程序,該應用程序通過ajax提交表單,並在呈現頁面之前返回解析返回值。 當我這樣做時,我最終會遇到計時錯誤。
通過腳本標記包含以下代碼時,它將記錄未定義:
require(["dijit/registry", 'dojo/domReady!'], function(registry){ console.log(registry.byId('my-id')) });
當我將其粘貼到控制台中時,我得到了預期的dijit小部件。
我懷疑問題在於這在呈現頁面之前就已觸發。 有沒有一種簡單的方法可以確保在完全解析當前文檔並將其包含在主窗口中之后進行此操作?
可能您應該嘗試添加Parser
並在嘗試訪問小部件之前調用Parser.parse()
。
這是來自Dojo文檔
請注意,正在等待
dojo/domReady!
使用窗口小部件時,僅觸發通常是不夠的。 在以下模塊加載並執行之前,不應初始化或訪問許多小部件:
- 道場/ uacss
- 的dijit / hccss
- 道場/分析器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.