@typesaurus/react
Version:
React Hooks for Typesaurus, type-safe Firestore ODM
15 lines • 504 B
JavaScript
import { useState, useCallback } from "../adapter/index.mjs";
import { useRead } from "../index.mjs";
export function useLazyRead(query) {
const [evaluate, setEvaluate] = useState(false);
const result = useRead(evaluate && query);
const lazyEval = useCallback(hookEvaluate => {
!evaluate && hookEvaluate !== false && setEvaluate(true);
return result;
}, [evaluate, result]);
return lazyEval;
}
export const dummyLazyReadHook = () => [undefined, {
loading: true,
error: undefined
}];