Skip to content

PromiseSettledResult ​

Since 1.3.0

表示已结算 Promise 的结果,可以是已 fulfilled 或已 rejected。

Signature ​

typescript
type PromiseSettledResult<T> = PromiseFulfilledResult<T> | PromiseRejectedResult

Parameters ​

ParameterDescription
Tfulfilled 值的类型

Examples ​

Basic Usage ​

typescript
import type { PromiseSettledResult } from 'uni-types'

const results: PromiseSettledResult<string>[] = await Promise.allSettled([
  Promise.resolve('success'),
  Promise.reject(new Error('failed'))
])

类型守卫用法 ​

typescript
import type { PromiseSettledResult } from 'uni-types'

function isFulfilled<T>(result: PromiseSettledResult<T>): result is PromiseFulfilledResult<T> {
  return result.status === 'fulfilled'
}

处理结果 ​

typescript
import type { PromiseSettledResult } from 'uni-types'

async function processResults<T>(results: PromiseSettledResult<T>[]) {
  return results
    .filter((r): r is PromiseFulfilledResult<T> => r.status === 'fulfilled')
    .map(r => r.value)
}

基于 MIT 许可发布