extjs中mon()和on()之间的区别是什么?

The*_*lBo 3 javascript extjs

谁能解释一下ExtJS mon()on()ExtJS 之间的区别?

Sud*_*oti 7

好吧,如果你想避免内存泄漏,那么你使用mon而不是on来绑定事件.例如:

var p = new Ext.Panel({
     renderTo:Ext.getBody()
    ,title:'Panel with a listener on the body'
    ,beforeDestroy:function() {
        this.body.un('click', handler);
    }
});
Run Code Online (Sandbox Code Playgroud)

如果将侦听器添加为内联函数,例如:

p.on('click', function() {alert('You clicked my body')});
Run Code Online (Sandbox Code Playgroud)

那么就不可能有选择地删除这个监听器.但是,如果你使用mon,那么侦听器会被面板destroy上的ExtJs自动删除.