Model view controller extjsmvc中on和mon的区别

Model view controller extjsmvc中on和mon的区别,model-view-controller,extjs,Model View Controller,Extjs,我需要在extjs4.1.3中的xtype:“panel”中添加click事件 但我可以通过两种方式做到这一点 panel.mon(panel.getEl(),'click',function(){ panel.fireEvent(“单击”); }); panel.getEl().on('click',function()){ panel.fireEvent(“单击”); }); 所以在完成上述代码后,我可以在控制器中获得面板的点击事件,并在那个里完成我的工作。但我无法区分这两种方式。 我脑子里

我需要在extjs4.1.3中的xtype:“panel”中添加click事件

但我可以通过两种方式做到这一点

  • panel.mon(panel.getEl(),'click',function(){
    panel.fireEvent(“单击”);
    });

  • panel.getEl().on('click',function()){
    panel.fireEvent(“单击”);
    });

  • 所以在完成上述代码后,我可以在控制器中获得面板的点击事件,并在那个里完成我的工作。但我无法区分这两种方式。 我脑子里还有一个问题,哪一个是最好的方法? 请有人能帮我理解这个区别吗??
    提前感谢。

    mon
    用于组件将事件绑定到要在组件销毁时删除的内容。例如:

    // Some shared menu
    var menu = new Ext.menu.Menu();
    
    var p = new Ext.panel.Panel();
    p.mon(menu, 'show', function(){
        p.update('Menu was shown');
    });
    // This automatically causes the show event on the menu
    // to be removed, even though the menu wasn't touched
    p.destroy(); 
    

    在您的情况下,组件将始终清理其元素,因此这两种方式都不重要。

    mon在面板被破坏时自动清理Hanks Evan Trimboli。。。所以在你给的代码中..面板销毁时菜单将自动销毁…我说的对吗?谢谢Evan Trimboli…所以当我想在面板销毁时自动销毁另一个组件..那么我应该使用mun…对吗?不,面板销毁时菜单不会被销毁。这只是将从菜单中删除的事件侦听器。