import { logger } from './logger' /** 延迟 n 秒 */ export const delay = (time: number): Promise => new Promise((resolve) => setTimeout(() => resolve(), time)) /** 加载任务 */ export const loadingRunner = async (task: () => Promise, options?: { message?: string; minTime?: number }) => { const { minTime, message } = options ?? {} let start: number = new Date().getTime() logger.loading.start(message) try { await task() } finally { const runTime: number = new Date().getTime() - start // 给个最小任务时间 if (runTime < minTime) await delay(minTime - runTime) logger.loading.stop() } }