我已經在代碼中看到過這兩種方法,但我想知道使用dlg.hide()或dlg關閉對話框的首選和更有效的方法是什麼。 destroyRecursive()?何時隱藏()dijit.Dialog與dojo中的.destroyRecursive()
4
A
回答
3
這取決於您是否要重複使用對話框。如果重新創建它更便宜(您定義了更便宜的),請使用destroyRecursive()
。否則,只需創建一次,只需要hide()
就可以隨時關閉它。
請記住dijit將保留您在註冊表中創建的所有小部件。因此,簡單地讓對話變量超出範圍不會使其變得垃圾收集,並且這會導致內存泄漏的可能性。
2
我發現我不能完全銷燬對話框內的小部件,如果我只是調用dialog.destroyRecursive()
,雖然對話框看起來被破壞了。
取而代之,我必須撥打dialog.hide()
,然後在onHide
方法中調用this.destroyRecursive()
。
但是,這會導致另一個無害的錯誤「exception in animation handler for: onEnd
」。 但它確實讓對話框中的所有小部件都被破壞了。
相關問題
- 1. Dojo例外隱藏dijit.Dialog
- 2. Dojo - dijit.dialog
- 3. dojo dijit.Dialog undimming
- 4. Dojo dijit.Dialog動畫
- 5. Dojo和dijit.Dialog不居中
- 6. Dojo隱藏圖像
- 7. 柵格刷新時,Dojo柵格隱藏
- 8. 如何隱藏dojo splitcontainer/bordercontainer的面板?
- 9. 隱藏元素dojo解析
- 10. Dojo:顯示()和隱藏()....如何?
- 11. window.open從dojo dijit.dialog打開時失去焦點
- 12. dijit.Dialog中的iFrame:Dojo V1.8的行爲不像Dojo V1.7
- 13. 隱藏字段上的Dojo Onchange事件
- 14. 如何動態地隱藏dojo數據網格中的列?
- 15. 如何隱藏Dojo dgrid列中的顯示值?
- 16. 顯示/隱藏或切換Dojo網格
- 17. Worklight/Dojo - 鍵盤隱藏輸入字段
- 18. Dojo切換隱藏和顯示Div
- 19. 顯示/隱藏dojo網格列
- 20. DOJO - 爲DropDownMenu隱藏菜單項
- 21. 如何隱藏和取消隱藏menupath中的menues與asp.net/C#
- 22. 如何隱藏與mod_rewrite的
- 23. 信息隱藏與隱藏的依賴
- 24. 如何隱藏時
- 25. dojo Expando窗格內容在展開時隱藏
- 26. 隱藏的mod_rewrite與
- 27. 隱藏與FillLayout的
- 28. 隱藏與PHP
- 29. 如何設置溢出:爲dojo的對話框隱藏
- 30. dojo:根據列表中的選擇顯示或隱藏div
如果您打算再次打開該對話框,然後隱藏它。如果你不這樣做(這是一次性的對話?),那麼破壞它將釋放一些內存。雖然不多。 – 2011-06-16 10:02:24