2
0
Эх сурвалжийг харах

chore(shared): improve isPromise check in accordance with Promise A+ specification (#8506)

丶远方 2 жил өмнө
parent
commit
97b6fae6b4

+ 5 - 1
packages/shared/src/general.ts

@@ -50,7 +50,11 @@ export const isObject = (val: unknown): val is Record<any, any> =>
   val !== null && typeof val === 'object'
 
 export const isPromise = <T = any>(val: unknown): val is Promise<T> => {
-  return isObject(val) && isFunction(val.then) && isFunction(val.catch)
+  return (
+    (isObject(val) || isFunction(val)) &&
+    isFunction(val.then) &&
+    isFunction(val.catch)
+  )
 }
 
 export const objectToString = Object.prototype.toString