Backbone.js集合在实例化时将自身的副本添加到集合中

Backbone.js collection adds a copy of itself to collection on instantiation?

本文关键字:集合 副本 添加 js 实例化 Backbone      更新时间:2023-09-26

我一直在周末学习Backbone.js在构建一个简单的应用程序时出现了一个我不太理解的问题。

我有一个视图,用于创建集合并呈现集合的视图。即:

  gallery: function(page,id) {
    var that = this;                
    this.galleryCollection = new GalleryCollection;
    this.galleryCollection.setID = id;
    this.galleryCollection.region = page;
    this.galleryCollection.fetch({add: true,
                  success: function(model,response) {           
                   //render logic here      
    });
  }

这按预期工作;调用控制台.log(this.model.models)显示一个集合,其中仅包含与上述集合关联的模型。

但是,像这样构建代码:

gallery: function(page,id) {
  this.galleryCollection = new GalleryCollection({setID: id, region: page})
  this.galleryCollection.fetch()
  //additional code...

将新实例化的集合添加到要提取的模型集合中。 我可能在这里缺少一些基本的 Backbone.js 范式,但为什么要将集合本身添加到集合中?

Backbone.Collection构造函数的第一个参数应该是用于填充集合的模型数组。您似乎正在尝试通过将集合实例传递给构造函数来设置集合实例的属性。也许这是你问题的一部分。