在backbone.js中循环collection.fetch一定次数
我试图获取一个集合在backbone.js中循环collection.fetch一定次数,backbone.js,coffeescript,Backbone.js,Coffeescript,我试图获取一个集合x次,每次递增一个计数器。我遇到的问题是,由于我需要在回调中呈现视图,而且.fetch()是异步的,所以我不能简单地执行javascript循环。我想在success回调中告诉它再次调用自己,而不会进入无限循环 以下是我所拥有的: @collection.fetch data: {q: letters, i: i} success: @renderList() 在等待@renderList完成后再次运行之前,如何使此运行x次,每次递增I
x
次,每次递增一个计数器。我遇到的问题是,由于我需要在回调中呈现视图,而且.fetch()
是异步的,所以我不能简单地执行javascript循环。我想在success
回调中告诉它再次调用自己,而不会进入无限循环
以下是我所拥有的:
@collection.fetch
data: {q: letters, i: i}
success:
@renderList()
在等待@renderList
完成后再次运行之前,如何使此运行x
次,每次递增I
更新
因此,我正在取得进展——这似乎起了作用,但看起来很糟糕:
@collection.fetch
data: {q: letters, i: 1}
success:
@collection.fetch
data: {q:letters, i:2}
success:
@collection.fetch
data: {q:letters, i:3}
此外,成功回调在console中向我发出以下警告:
Uncaught TypeError: object is not a function
建议?可以尝试这样的递归函数(这是唯一的示例): 这样称呼它:
recursiveFetch(@collection, => @renderList(), i, {q:letters})
也许可以尝试这样的递归函数(这只是一个示例): 这样称呼它:
recursiveFetch(@collection, => @renderList(), i, {q:letters})
它怎么会起作用呢?您忘记了每个成功:
部分后的->
或=>
字符。它怎么会起作用呢?您忘记了每个成功:
部分后的->
或=>
字符。