我正在使用RequireJS和Backbone并使用collection
收听add
的{{1}}事件。我无法弄清楚如何引用listenTo
作为我所在视图的实例,在本例中为this
。
GroupView
答案 0 :(得分:2)
你有:
this.listenTo(Groups,'add',this.addGroup,this);
使用Backbone的on
,您可以提供第4个参数,就像您所做的那样,设置上下文。但是,这不适用于listenTo
;它只需要三个参数(这是因为listenTo总是将上下文设置为listened-to对象。)
您应该能够通过创建绑定addGroup
来解决这个问题:
this.listenTo(Groups,'add',_(this.addGroup).bind(this));
或者您可以使用以下方法将方法绑定到您的类:
_(this).bindAll('addGroup');
然后让你做:
this.listenTo(Groups,'add',this.addGroup);