fetch没有更新collection.model.models

时间:2012-07-09 15:28:49

标签: javascript backbone.js

我有一个我已经初始化的骨干集合:

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 []

有谁知道为什么?

2 个答案:

答案 0 :(得分:2)

fetch是一个异步操作,所以无论你在fetch之后做什么都很可能在fetch完成之前执行,这会导致相当随机的结果。将控制台记录放在fetch的success-function中,看看会发生什么

答案 1 :(得分:0)

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

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

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

        console.log(returnedCollection.models);
  }
});