gpt4 book ai didi

javascript - 将循环回调连接到 promise 链

转载 作者:行者123 更新时间:2023-11-30 00:02:31 25 4
gpt4 key购买 nike

方法中的 childAdded 回调被调用,好吧,每次添加一个 child 时(也称为多次):

        listenToBuildRequests({
childAdded: (value, key) => {
console.log('value, key -> ', value, key);
}
});

是否可以使用 ES6 或第三方将其连接到 promise 链?

 childAdded()
.then(...

我知道这不是标准的,我知道 promise 会运行一次,这将需要每次都生成一个新的 promise 。然而,使用 Firebase 和 promises 它将使我无需在回调中重复启动 promise 链:

listenToBuildRequests({
childAdded: (value, key) => {
createBuildDirectory(appId).
then(...
}
});

一个非常简单的 JSBin 示例(没有链接),它不假设复制 promise 模式而是玩弄这个概念: http://jsbin.com/mekoza/edit?js,console

最佳答案

一个 promise 只能解决一次。由于 on() 可以触发多次,因此不能将其链接到 promise 链中。

如果您只关心添加的第一个 child ,您可以使用once()。这只会触发一次并且确实返回一个 promise 。

关于javascript - 将循环回调连接到 promise 链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39863437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com