Backbone.js 集合与模型之间的主干通信

Backbone.js 集合与模型之间的主干通信,backbone.js,Backbone.js,假设我有一个(音频/视频)曲目模型和这些曲目的集合 型号: Backbone.Model.extend({ defaults:{...}, play: function() { //plays the track } }); Backbone.Collections.extend({ currentTrackInList: 0, model: track, playAll: function() { self = this;

假设我有一个(音频/视频)曲目模型和这些曲目的集合

型号:

Backbone.Model.extend({
   defaults:{...},
   play: function() {
      //plays the track
   }
});
Backbone.Collections.extend({
   currentTrackInList: 0,
   model: track,
   playAll: function() {
      self = this;
      this.models.each(function(item){
         item[self.currentTrackInList].play();
      });
   }
});
然后,集合表示类似于播放列表的内容,其中包含

收藏:

Backbone.Model.extend({
   defaults:{...},
   play: function() {
      //plays the track
   }
});
Backbone.Collections.extend({
   currentTrackInList: 0,
   model: track,
   playAll: function() {
      self = this;
      this.models.each(function(item){
         item[self.currentTrackInList].play();
      });
   }
});
我现在需要做的是访问模型中集合的属性,以确定播放逻辑(即当前播放的曲目是否是集合中的最后一个曲目)


当然,我可以通过集合中的play()函数传递参数,但是必须有一种更简单的方法让模型和基于所述模型的集合相互通信。

模型知道其集合。您可以通过
this.collection

访问它,非常感谢。请原谅我如此大胆地说我是个白痴