From ce02a411633423fc6fb75cd274338f81fd380d61 Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Fri, 3 May 2024 17:57:20 +0100 Subject: add focus refresh + polling (#3846) --- src/components/hooks/useRefreshOnFocus.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 src/components/hooks/useRefreshOnFocus.ts (limited to 'src/components/hooks') diff --git a/src/components/hooks/useRefreshOnFocus.ts b/src/components/hooks/useRefreshOnFocus.ts new file mode 100644 index 000000000..6bf7ac8b1 --- /dev/null +++ b/src/components/hooks/useRefreshOnFocus.ts @@ -0,0 +1,17 @@ +import {useCallback, useRef} from 'react' +import {useFocusEffect} from '@react-navigation/native' + +export function useRefreshOnFocus(refetch: () => Promise) { + const firstTimeRef = useRef(true) + + useFocusEffect( + useCallback(() => { + if (firstTimeRef.current) { + firstTimeRef.current = false + return + } + + refetch() + }, [refetch]), + ) +} -- cgit 1.4.1