• 轮询函数

    用于代替setInterval,回调且支持promise

    参数

    • callback: ((times: number) => void | Promise<any>)

      回调,返回值支持promise

        • (times): void | Promise<any>
        • 参数

          • times: number

          返回 void | Promise<any>

    • interval: number

      间隔

    • 可选immediate: boolean = true

      是否马上执行第一次

    返回 {
        promise: Promise<void>;
        cancel: (() => void);
    }

    • promise: Promise<void>
    • cancel: (() => void)
        • (): void
        • 返回 void

    let t = 0;

    let { cancel, promise } = polling((times) => {
    t = times;
    if (times === 10) cancel();
    }, 10);
    await promise;
    t; // 10