Skip to content

all

等待多个Promise

559 bytes
since v12.1.0

all 函数类似于内置的 Promise.all 或 Promise.allSettled 函数。给定一个 Promise 列表(或对象),如果抛出任何错误,将收集所有错误并在 AggregateError 中抛出。

使用数组

传递数组作为参数将按相同顺序返回已解析的 Promise 值作为数组。

import * as _ from 'radashi'
const [user] = await _.all([
api.users.create(...),
s3.buckets.create(...),
slack.customerSuccessChannel.sendMessage(...)
])

使用对象

传递对象作为参数将返回具有相同键的对象,值为已解析的 Promise 值。

import * as _ from 'radashi'
const { user } = await _.all({
user: api.users.create(...),
bucket: s3.buckets.create(...),
message: slack.customerSuccessChannel.sendMessage(...)
})