Options
All
  • Public
  • Public/Protected
  • All
Menu

External module "promise"

promise、异步操作相关的工具函数。

Index

Type aliases

PromiseCallback

PromiseCallback<T>: function

Type parameters

  • T

Type declaration

PromiseReject

PromiseReject: function

Type declaration

    • (reason: any): void
    • Parameters

      • reason: any

      Returns void

PromiseResolver

PromiseResolver<T>: function

类型定义

Type parameters

  • T

Type declaration

    • (val: T): void
    • Parameters

      • val: T

      Returns void

Functions

concurrentTask

  • concurrentTask<R>(): object
  • 按照 push 顺序执行并发的任务 防止并发多个任务只执行一个任务后其他任务被销毁

    example
    
    const tasks = concurrentTask<MessageData[] | undefined>()
    
    for (let i = 0; i < messages.length; i++) {
       tasks.push(() => {}) // tasks.push(Promise<any>)
    }
    const res = await tasks.run()
    

    Type parameters

    • R

      自定义返回值类型

    Returns object

    push 将异步操作加入任务队列,run 按顺序执行任务队列里的所有异步操作

delay

  • delay(ms: number): Promise<unknown>
  • 延迟指定毫秒

    Parameters

    • ms: number

    Returns Promise<unknown>

executeAsyncTask

  • executeAsyncTask<T>(id: string, task: function): Promise<T>
  • 执行异步任务, 它会处理重复发起的任务

    example
    const res = await executeAsyncTask<User>('get-user', async () => Promise<User>) // 如多次发起请求,只会请求一次

    Type parameters

    • T

    Parameters

    • id: string

      任务唯一索引

    • task: function

      异步执行方法

        • (): Promise<T>
        • Returns Promise<T>

    Returns Promise<T>

extraPromise

  • extraPromise<T>(): Promise<object>
  • 抽取出promise的Resolve和Reject函数, 可以在外部进行使用

    example
    const { promise, reject, resolve } = extraPromise()

    Type parameters

    • T

    Returns Promise<object>

promiseWithTimeout

  • promiseWithTimeout<T>(prom: PromiseCallback<T>, timeout: number): Promise<T>
  • 增加超时机制的promise

    Type parameters

    • T

    Parameters

    Returns Promise<T>

retryablePromise

  • retryablePromise<T>(prom: function, time?: number, duration?: number): Promise<undefined | T>
  • 可重试的promise, 出现异常时进行重试

    Type parameters

    • T

    Parameters

    • prom: function
        • (): Promise<T>
        • Returns Promise<T>

    • Default value time: number = 1

      重试的次数

    • Default value duration: number = 0

      重试的间隔

    Returns Promise<undefined | T>

Generated using TypeDoc