From a9b389b6fb39631e79338b1458a600183c3fb776 Mon Sep 17 00:00:00 2001 From: Gabriel Jacinto Date: Thu, 4 May 2023 17:50:36 -0300 Subject: [PATCH] use useCallback instead of useMemo --- packages/zact/client.ts | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/packages/zact/client.ts b/packages/zact/client.ts index 0ea2fbe..1953eb2 100644 --- a/packages/zact/client.ts +++ b/packages/zact/client.ts @@ -2,7 +2,7 @@ import type z from "zod"; import type { ZactAction } from "./server"; -import { useMemo, useRef, useState } from "react"; +import { useCallback, useRef, useState } from "react"; export function useZact< InputType extends z.ZodTypeAny, @@ -15,23 +15,20 @@ export function useZact< const [isRunning, setIsLoading] = useState(false); const [err, setErr] = useState(null); - const mutate = useMemo( - () => async (input: z.infer) => { - setIsLoading(true); - setErr(null); - setData(null); - try { - const result = await doAction.current(input); - setData(result); - setIsLoading(false); - } catch (e) { - console.log(e); - setErr(e as Error); - setIsLoading(false); - } - }, - [] - ); + const mutate = useCallback(async (input: z.infer) => { + setIsLoading(true); + setErr(null); + setData(null); + try { + const result = await doAction.current(input); + setData(result); + setIsLoading(false); + } catch (e) { + console.log(e); + setErr(e as Error); + setIsLoading(false); + } + }, []); return { mutate,