0

我有一个像这样初始化的骨干集合:

myCollection = new MyCollection([], {type: 'animals', params: {username: 'steve'}});

myCollection.fetch();

console.log(myCollection)  // prints out an object that includes 'models' and the newly fetched models

console.log(myCollection.models)  // prints out an empty list []

有谁知道为什么?

4

2 回答 2

2

fetch 是一个异步操作,因此您在 fetch 之后立即执行的任何操作很可能在 fetch 完成之前执行,这会导致相当随机的结果。将控制台日志记录放在 fetch 的成功函数中,看看会发生什么

于 2012-07-09T19:06:38.163 回答
0

您的收藏模型必须具有服务器的 url 才能将其提取到收藏中,我认为您在“MyCollection”上有它,以防万一。然后您只需要添加一个成功回调来显示填充的集合,如下所示:

myCollection = new MyCollection([], {type: 'animals', params: {username: 'steve'}});

myCollection.fetch({
  success : function(returnedCollection, response){
       console.log(returnedCollection);  

        console.log(returnedCollection.models);
  }
});
于 2012-07-09T19:37:16.840 回答