um-react/src/util/nextTick.ts

15 lines
420 B
TypeScript
Raw Normal View History

type NextTickFn = (callback: () => void) => void;
/* c8 ignore start */
const nextTickFn =
typeof setImmediate !== 'undefined'
? (setImmediate as NextTickFn)
: typeof requestAnimationFrame !== 'undefined'
? (requestAnimationFrame as NextTickFn)
: (setTimeout as NextTickFn);
/* c8 ignore stop */
export async function nextTickAsync() {
return new Promise<void>((resolve) => nextTickFn(resolve));
}