在Backbone视图中使用函数

时间:2017-02-05 03:05:46

标签: javascript jquery backbone.js backbone-views backbone-collections

我有一个为集合定义的视图。此视图在渲染时调用一个函数,该函数对传入的模型执行某些必要的操作,并将其附加到网页。这是它的简短版本:

addNightFeed: function(nightFeed) {
    var nightFeedView = new app.nightFeedView ({ model: nightFeed });
    this.$el.append(nightFeedView.render().el);
}

在我的网页上有一个'添加'按钮。单击时,它会创建一个适当类型的新模型,其中包含某些属性。

我想知道是否有办法在添加'添加'时创建的新模型上调用addNightFeed。点击。

1 个答案:

答案 0 :(得分:2)

您只需调用viewInstance.addNightFeed(newModalInstance)即可。如果由于某种原因你不能这样做我想不到:

由于您有一个集合视图,您可以listenTo您的集合add事件并调用addNightFeed。例如:

// Collection view
initialize: function(){
  this.listenTo(this.collection, 'add', this.addNightFeed);
}

单击添加按钮后,可以使用集合add方法将已创建的模式实例添加到其中,或使用create方法创建并添加它,具体取决于您的要求。这将触发add事件并调用addNightFeed