我将我的观点分成单独的文件。在我的主视图中,我试图在另一个视图中调用一个函数。有没有办法在 Backbone.js 中做到这一点?
问问题
1282 次
1 回答
3
一个好方法是使用调解器模式,这样您就不会紧密耦合您的视图。在最新版本的 Backbone 中,Backbone
对象可以用作中介。
在视图 1 中:Backbone.trigger('somethingHappened', {id: 1});
在视图 2 中:
//action when 'something' happens
onSomething : function(data){
console.log('Got that: ' + data.id)
}
//... in the view init ...
Backbone.on('somethingHappened', onSomething)
//... in the view destruction...
Backbone.off('somethingHappened', onSomething);
您也可以使用更新的listenTo
方法。当然,它只有在 view2 已经初始化的情况下才会起作用。
于 2013-02-27T14:35:54.313 回答