From aca2a5c1d9b25d10187e0edcf81bbcf16470b2f1 Mon Sep 17 00:00:00 2001 From: Sergio Betanzos Date: Wed, 23 Jun 2021 15:51:55 +0200 Subject: [PATCH] F OpenNebula/one#5422: Fix minor on hooks --- src/fireedge/src/client/hooks/useFetch.js | 14 ++++++-------- src/fireedge/src/client/hooks/useSocket.js | 4 +--- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/fireedge/src/client/hooks/useFetch.js b/src/fireedge/src/client/hooks/useFetch.js index 3aacc0f6f4..ca124a1b80 100644 --- a/src/fireedge/src/client/hooks/useFetch.js +++ b/src/fireedge/src/client/hooks/useFetch.js @@ -51,15 +51,9 @@ const useFetch = (request, socket) => { const cancelRequest = useRef(false) const [state, dispatch] = useReducer(fetchReducer, INITIAL_STATE) - useEffect(() => { - return () => { - cancelRequest.current = true - } - }, []) + const isFetched = state.data !== undefined && state.status === STATUS.FETCHED useEffect(() => { - const isFetched = state.data !== undefined && state.status === STATUS.FETCHED - isFetched && socket?.connect( socketData => dispatch({ type: ACTIONS.SUCCESS, payload: socketData }) ) @@ -67,7 +61,11 @@ const useFetch = (request, socket) => { return () => { socket?.disconnect() } - }, [state.data, state.status]) + }, [isFetched]) + + useEffect(() => () => { + cancelRequest.current = true + }, []) const doFetch = useCallback(async (payload, reload = false) => { dispatch({ type: ACTIONS.REQUEST, reload }) diff --git a/src/fireedge/src/client/hooks/useSocket.js b/src/fireedge/src/client/hooks/useSocket.js index 7945b7b3e1..38a4457ba8 100644 --- a/src/fireedge/src/client/hooks/useSocket.js +++ b/src/fireedge/src/client/hooks/useSocket.js @@ -35,9 +35,7 @@ export default function useSocket () { socket.connect() }, - disconnect: () => { - socket.connected && socket.disconnect() - } + disconnect: () => socket.connected && socket.disconnect() } }, [jwt, zone])