每个承诺都是针对数据库的。 我正在深入研究关系数据库。 返回某些内容的每个选项可能会触发更多所需的选择。
所以......我有许多未知的承诺等待。 当所有的承诺都完成并且列表中没有添加新的承诺时,我才真正“完成”。
我的“db”对象保留了一个内部的promises数组,并提供了一个“wait()”函数来等待所有这些,但我不知道它什么时候真的完成了,所以我最终这样做了:
db.wait().then ->
db.wait().then ->
db.wait().then ->
db.wait().then ->
db.wait().then ->
console.log "finished waiting"
哪个有效,但仅仅因为我的“等级”数量有限。 (如果“级别”的数量无限制怎么办?)
是否存在用于累积promises的现有模式,其中处理程序可能会向列表添加更多的promise?