我有一个Backbone路由器和六个Backbone Views,它们加载(取决于用户的设置)两个模板中的一个。然而,两个模板都使用相同的功能,我不想重复自己在两个模板或六个视图中定义功能。相反,我想在路由器中定义它。我知道如何将模型传递给视图和模板。但是,我如何将自定义函数传递给View,然后传递给模板,以便可以在其中任何一个中调用它?
由于
答案 0 :(得分:3)
您可以创建一个“超级”视图,其他所有视图都可以扩展。
类似的东西:
var MySuperView = Backbone.View.extend({
myReusableFunction: function() {
// do stuff
}
});
var View1 = MySuperView.extend({});
var View2 = MySuperView.extend({});
View1和View2都有myReusableFunction
可用。