![](/img/trans.png)
[英]How to use async readdir function inside a loop iterating over series of directories?
[英]how to use async series inside a for loop in coffeescript?
我在coffeescript中使用caolan的异步lib。 我的任务在for循环内,并且在循环完全执行后,我需要运行回调函数。
这就是我现在所拥有的。 我不希望最终的回调每次都在for循环内运行。 我怎样才能做到这一点?
for key, value of settings
async.series([
((callback) ->
getSetting key, (value) ->
#do something and create object settingValues
callback(null, settingValues)
)
],
#final callback which I want to run after the entire for loop is completed.
(err, results) ->
someFunction results
)
如果您真的想使用async.series
for循环来构造函数数组,则传递该数组
arr = []
for key, value of settings
arr.push (callback) ->
getSetting key, (value) ->
callback(null, settingValues)
async.series arr, (err, results) -> someFunction results
或者,您可以只使用异步来迭代
async.map Object.keys(settings), (key, callback) ->
# if you need 'value' in here, use settings[key]
getSetting key, (value) ->
callback(null, settingValues)
, (err, results) -> someFunction results
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.