/** * enhancePromise 函数可以将原生 Promise 进行增强, * 添加一些判断 Promise 状态的方法。 * @param promise 一个可选参数,指定需要增强的 Promise。 * @returns 一个增强的 Promise 对象,该对象具有原生 Promise 的所有方法, * 但是增加了一些判断 Promise 状态的方法和属性。 * * 以下为使用示例 const promise = new Promise((resolve, reject) => { setTimeout(() => { resolve('success') }, 1000) }) const enhancedPromise = enhancePromise(promise) // 获取当前 Promise 对象的状态 console.log(enhancedPromise.isPending()) // true setTimeout(() => { console.log(enhancedPromise.isFulfilled()) // true console.log(enhancedPromise.getValue()) // 'success' }, 1000) */ export default function enhancePromise(promise?: Promise): Promise & { resolve: (value?: T | PromiseLike) => void; reject: (reason?: any) => void; isNotPending: () => boolean; isPending: () => boolean; isFulfilled: () => boolean; isResolved: () => boolean; isRejected: () => boolean; getValue: () => T | PromiseLike; getError: () => any; };