Three months ago I wrote an utility function to deal with write-only atoms in Jotai. To go with it, today I wrote a function to deal with read-only atoms, so now I have:
import {Atom, useAtom, WritableAtom} from 'jotai'; /** * Syntactic sugar to useAtom() for read-only atoms. */ export function useReadAtom<V>(a: Atom<V>) { const [val] = useAtom(a); return val; } /** * Syntactic sugar to useAtom() for write-only atoms. */ export function useWriteAtom<V, A extends unknown[], R>(a: WritableAtom<V, A, R>) { const [_, setFunc] = useAtom(a); return setFunc; }
It’s worth mentioning that useReadAtom
also works for derived atoms, used for computed values.
No comments:
Post a Comment