【发布时间】:2017-02-07 03:29:16
【问题描述】:
我正在学习 JS 承诺,并且在理解事物方面取得了一些进展,但不确定如何将其与 return 和使用 Q.all 结合在一起
假设我有一个函数:(getParentsForLocation 返回一个承诺)
function doBusiness() {
return Q.all(
locations.map(function(item, currentIndex) {
return getParentsForLocation(item.id)
.then(function(res) {
return checkParent(res, currentIndex)
}
});
}))
.then(_.uniq(locations))
}
然后遵循这一点,即在该映射遍历 locations 数组中的所有元素之后,我想运行类似下划线的 uniq 函数:_.uniq(someArrayIHave);
- 我需要把它放在
Q.all([])中吗? \ - 如果是这样,它会按顺序运行该数组中的每个方法吗?
- 我想我需要处理
doBusiness()函数,例如返回一些承诺,但不确定会是什么样子?
任何帮助表示赞赏。
非常感谢。
【问题讨论】:
-
所以你想等待所有创建的承诺,然后在其他地方(即不在
doBusiness(...)函数中),你想在其他数组上调用_.uniq(...),你确认吗? -
有一个数组,我希望
doBusiness处理它,然后一旦完成我想调用_.uniq
标签: javascript promise q