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

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


我的网页上有一个“添加”按钮。单击后,它将创建一个包含适当属性的适当类型的新模型。

我想知道是否有一种方法可以在单击“添加”时创建的新模型上调用addNightFeed。

最佳答案

您可以简单地调用viewInstance.addNightFeed(newModalInstance)。如果由于某种原因您不能这样做,我将无法想到:

由于具有集合视图,因此可以listenTo集合add事件并调用addNightFeed。例如:

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


单击添加按钮后,可以根据需要使用collections add方法向其添加已创建的模式实例,或使用create方法创建并添加它。这将触发add事件并调用addNightFeed

10-06 11:46