我有以下主干视图:
Chatbox.Views.Message = Backbone.View.extend({
template: _.template($("#tmplt-Message").html()),
events: {
"click a.remove_link" : "clear"
},
initialize: function () {
_.bindAll(this, 'render', 'remove');
this.model.on('clear', this.clear);
this.listenTo(this.model, 'destroy', this.remove);
},
render: function () {
return $(this.el).append(this.template(this.model.toJSON())) ;
},
clear: function() {
this.model.destroy();
}
});
当我单击该类的链接时,remove_link
该clear()
函数被正确调用并被destroy()
执行。
我如何从clear()
外部调用,在我的情况下,我有一个集合,我想删除这个集合中的一个模型。目前我正在尝试这样做:
message = Chatbox.ChatLogCollection.where({ hash: hash});
message.clear();
Chatbox.ChatLogCollection.remove(message);
但我得到: TypeError: message.clear is not a function
如何调用clear()
从视图中删除模型?