diff --git a/src/index.ts b/src/index.ts index 9a7a032..9418252 100644 --- a/src/index.ts +++ b/src/index.ts @@ -129,17 +129,17 @@ export function useControllerState>( } // Update resultRef and force a re-render if the store changes. - useEffect(() => { - const unsubscribe = store.subscribe((state: Immutable) => { - const newResult = latestSelector.current(state); - if (!latestIsEqual.current(resultRef.current, newResult)) { - resultRef.current = newResult; - setResult(newResult); - } - }); - - return () => unsubscribe(); - }, [latestIsEqual, latestSelector, store]); + useEffect( + () => + store.subscribe((state: Immutable) => { + const newResult = latestSelector.current(state); + if (!latestIsEqual.current(resultRef.current, newResult)) { + resultRef.current = newResult; + setResult(newResult); + } + }), + [latestIsEqual, latestSelector, store] + ); return resultRef.current; }