model-view-controller - ExtJs MVC 中 on 和 mon 的区别

标签 model-view-controller extjs

我需要在我的 xtype 中添加点击事件:extjs 4.1.3 中的“panel”

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

  1. panel.mon(panel.getEl(), '点击', function(){ panel.fireEvent('点击'); });

  2. panel.getEl().on('点击',function(){ panel.fireEvent('点击'); });

所以在完成上面的代码之后,在 Controller 中我可以获得面板的点击事件并可以在那里做我的事情。但我无法区分这些方式之间的区别。 我心中的另一个问题是哪个是最好的方法? 请有人帮助我理解这个差异吗? 提前致谢。

最佳答案

当组件将事件绑定(bind)到我们想要在组件被销毁时删除的内容时,使用

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(); 

就您而言,组件总是会清理它的元素,因此无论哪种方式都并不重要。

关于model-view-controller - ExtJs MVC 中 on 和 mon 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16919602/

相关文章:

javascript - Extjs 3.4 在工具栏中呈现按钮时出现问题

javascript - Ext.dispatch 来自 itemTap 监听器?

android - 在 Android 列表中显示不同类型的行

model-view-controller - 如何命名 Controller 和模型之间的层 codeigniter MVC

django - 使用 CheckboxSelectMultiple 在 django MultipleChoiceField 中正确定义 "other"选项

ExtJS Ext.data.JsonStore loadData

java - 使用 MVC 创建外部 ActionListener

java - MVC 中通过线程从内部类调用外部类

javascript - 如何修改 javascript captch 以在 extjs 中使用它

javascript - 如何检查复选框是否在 extjs 中被选中?