backbone.js collection - 重复调用fetch以从服务器获取所有“页面”

时间:2012-01-12 01:09:59

标签: javascript ajax backbone.js

创建新集合时,会自动调用fetch一次。这给了我“第一页”,以及下一页的URL +一定数量的条目。现在,我需要做的是通过反复调用fetch来填充此集合(一次性完成),直到下一页字段未定义为止。

我该怎么做?好像我用回调(成功)函数调用fetch,它只调用那个ONCE。如下所示:

fetch(success: function () { 
if (condition)
  fetch again
});

它不会反复调用fetch(直到条件为假)。相反,它只调用一次,并且由于“再次获取”部分未在成功函数中传递,因此它没有回调?

我该如何解决这个问题?什么是最好的方法?谢谢!

1 个答案:

答案 0 :(得分:4)

只需命名该函数并将其传递给内部调用。

示例(从视图中):

var self = this;
self.collection.fetch({ success: function success() {
  if (condition) {
    self.collection.fetch({ success: success });
  }
}});

HERE 就是一个例子。