【发布时间】:2013-06-18 16:22:27
【问题描述】:
里面
Songs.IndexRoute = Ember.Route.extend({})
我们有一些事件,在 HTML 文件中由{{action selRow}} 触发。
他们做抽象事件,但不能定义自己。
在这个例子中,我有一个表格,需要通过点击来选择行,然后点击按钮删除选定的行,但不知道该怎么做。
【问题讨论】:
标签: javascript ember.js routes action
里面
Songs.IndexRoute = Ember.Route.extend({})
我们有一些事件,在 HTML 文件中由{{action selRow}} 触发。
他们做抽象事件,但不能定义自己。
在这个例子中,我有一个表格,需要通过点击来选择行,然后点击按钮删除选定的行,但不知道该怎么做。
【问题讨论】:
标签: javascript ember.js routes action
将被选择的模型对象作为参数传递给 selRow 事件:
{{action selRow this}}
现在使用 IndexController 来跟踪选定的歌曲。使用路由的模型钩子将数组开始为空:
Songs.IndexRoute = Ember.Route.extend({
model: function() {
return Ember.A()
},
});
现在事件作为控制器方法更有意义:
Songs.IndexController = Ember.ArrayController.extend({
pushMe: function(){
this.forEach(function(song) {
console.log('deleting song: ', song.toString());
});
},
selRow: function(song) {
console.log('I am selected', song, song.toString());
this.pushObject(song);
}
});
在此处查看修改后的小提琴:http://jsfiddle.net/HwCx3/
【讨论】: