Files
PrintAuftrag-Portfolio/frontend/hooks/use-store.ts
2025-11-08 13:42:43 +01:00

18 lines
410 B
TypeScript

import { useState, useEffect } from "react";
/**
* This hook fix hydration when use persist to save hook data to localStorage
*/
export const useStore = <T, F>(
store: (callback: (state: T) => unknown) => unknown,
callback: (state: T) => F
) => {
const result = store(callback) as F;
const [data, setData] = useState<F>();
useEffect(() => {
setData(result);
}, [result]);
return data;
};