我想知道dojo小部件中"this.own()“方法的用意。Dojo Api 1.8文档中提到了这种方法,例如在diijit/form/button下。我在谷歌上找不到任何对我有意义的东西。这就是该方法是如何被提及的:
connect(obj,event,method)
已弃用,将在2.0中删除,请使用this.own(on(...))或this.own(aspect.after(...))而是。
发布于 2013-03-12 22:28:24
own
函数是在dijit/Destroyable
中定义的,它是dijit/_WidgetBase
的基础,因此也是大多数小部件的基础。
dijit/Destroyable用于跟踪实例的句柄,在实例销毁时销毁。应用程序必须在实例上调用destroy()才能释放句柄
http://dojotoolkit.org/reference-guide/1.8/dijit/Destroyable.html
http://dojotoolkit.org/reference-guide/1.8/dojo/Evented.html
发布于 2015-10-27 23:52:32
简短的答案是:一旦小部件本身被销毁,您在.own()
中定义的大多数内容都会被正确地删除。使用.own()
可以防止应用程序中的内存泄漏。
发布于 2014-08-05 18:21:03
销毁要从页面中删除小部件,可以在小部件上调用
或destroyRecursively。
这样做时,您使用this.own添加的任何内容( dojo/on、dojo/aspect、dojo/topic、dojo/router、相关DOM节点或小部件的创建,等等)将被自动删除和/或注销。这是通过dijit/Destroyable接口实现的。
https://stackoverflow.com/questions/15363019
复制相似问题