automatically cancel requests when necessary
Massimo Melina committed
Jan 15, 2025 at 23:30 UTC
b5b0c435a22ce9a513f5d27770ca72f9e6113d29
1 file changed
+1
-1
shared/api.ts
+1
-1
@@ -88,7 +88,6 @@ export function useApi<T=any>(cmd: string | Falsy, params?: object, options: Api
88
const reloadingRef = useRef<any>()
89
const dataRef = useRef<any>()
90
useEffect(() => {
91
- loadingRef.current?.abort()
91
setError(undefined)
92
let aborted = false
93
let req: undefined | ReturnType<typeof apiCall>
@@ -107,6 +106,7 @@ export function useApi<T=any>(cmd: string | Falsy, params?: object, options: Api
106
}
107
})
108
reloadingRef.current?.resolve(wholePromise)
109
+ return () => loadingRef.current?.abort()
110
}, [cmd, JSON.stringify(params), forcer]) //eslint-disable-line -- json-ize to detect deep changes
111
const reload = useCallback(() => {
112
if (loadingRef.current) return