【发布时间】:2017-01-15 06:22:53
【问题描述】:
我正在尝试利用 es7 异步功能,即
async function stepVerifyIdentity(nextState, replace, callback) {
const val1 = await promise1('Param1')
const val2 = await promise2('Param2')
const val3 = await promise3('Param3')
if (!val1 && (!val2 || !val3)) {
console.log('Do something')
}
}
这里所有 promise* 函数都进行 ajax 调用并返回 true 或 false 如果 ajax 响应满足传递的参数,我相信我不能连续使用 3 个等待,因此需要一种等待的方法让所有这些调用以某种方式返回它们的值。
【问题讨论】:
-
我遇到了类似的问题。也许这对你有帮助。就我而言,我使用的是 jquery 承诺。 stackoverflow.com/questions/37658721/…
-
@Mayday
Promise.all看起来很有希望(没有双关语) -
我不是 100% 熟悉 es7,但是 promise.all ?
-
"我相信我不能连续使用 3 次等待" - 当然可以,您认为这有什么问题? (虽然你may not want it)
标签: javascript async-await ecmascript-next