Ember.js 如何处理余烬视图中不同DOM元素的事件?
我的余烬视图是其他DOM元素的容器。我对独立处理一些包含DOM元素的事件感兴趣。例如,在backbone.js视图中,我们可以将它们作为Ember.js 如何处理余烬视图中不同DOM元素的事件?,ember.js,Ember.js,我的余烬视图是其他DOM元素的容器。我对独立处理一些包含DOM元素的事件感兴趣。例如,在backbone.js视图中,我们可以将它们作为 events: { 'click #some_button': 'handle_button_click', 'click #some_anchor': 'handle_anchor_click' } 如何针对emberjs做类似的事情?。是否必须为我感兴趣的每个DOM元素创建独立视图来处理事件?无需为每个元素创建视图 只需使用{{action}
events: {
'click #some_button': 'handle_button_click',
'click #some_anchor': 'handle_anchor_click'
}
如何针对emberjs做类似的事情?。是否必须为我感兴趣的每个DOM元素创建独立视图来处理事件?无需为每个元素创建视图 只需使用
{{action}
助手,您就可以在控制器或路由器中捕获这些事件
这里有更多信息:在EmberJS中,您不需要将事件绑定到函数。Ember提供对DOM事件的默认绑定。我建议您仔细阅读以了解绑定 另外,如果要在元素上绑定函数,可以按照以下方式进行。我以您的BBJS示例为例,以帮助您更好地理解代码
var App.TestView = Ember.View.extend({
click : function(e) {
if($(e.target).attr('id')==='some_button') {
this.handle_button_click(e);
} else if($(e.target).attr('id')==='some_anchor'){
this.handle_anchor_click(e);
}
},
handle_button_click : function(e) {//someCode};
handle_anchor_click : function(e) {//someCode};
});
实际上,你可以在条件中使用相同的
click
功能中的handle\u button\u click
或handle\u anchor\u click
代码,除非你想让它更模块化…你已经阅读过关于Ember的动作助手了吗?