Ir al contenido
GitHub

@effectify/solid-effect-atom

Se suscribe a un átomo y retorna una tupla [accessor, setter].

function useAtom<R, W>(
  atom: Atom.Writable<R, W>,
): [Accessor<R>, (value: W) => void]

Se suscribe a un átomo y retorna su valor como un accessor.

function useAtomValue<A>(atom: Atom.Atom<A>): Accessor<A>
function useAtomValue<A, B>(atom: Atom.Atom<A>, f: (a: A) => B): Accessor<B>

Retorna una función setter para el átomo sin suscribirse a su valor.

function useAtomSet<R, W>(atom: Atom.Writable<R, W>): (value: W) => void

Se suscribe a cambios en el valor de un átomo.

function useAtomSubscribe<A>(
  atom: Atom.Atom<A>,
  f: (value: A) => void,
  options?: { immediate?: boolean },
): void

Monta un átomo en el registro sin suscribirse a su valor. Es útil para mantener un átomo vivo.

function useAtomMount<A>(atom: Atom.Atom<A>): void

Retorna una función que fuerza al átomo a refrescar su valor.

function useAtomRefresh<A>(atom: Atom.Atom<A>): () => void

Establece valores iniciales para átomos en el registro actual. Útil para SSR o inicialización.

function useAtomInitialValues(
  initialValues: Iterable<[Atom.Atom<any>, any]>,
): void

Se suscribe a un AtomRef y retorna su valor como un accessor.

function useAtomRef<A>(ref: AtomRef.ReadonlyRef<A>): Accessor<A>

Crea un AtomRef derivado para una propiedad específica de un objeto almacenado en un AtomRef.

function useAtomRefProp<A, K extends keyof A>(
  ref: AtomRef.AtomRef<A>,
  prop: K,
): AtomRef.AtomRef<A[K]>

Se suscribe a una propiedad específica de un objeto almacenado en un AtomRef.

function useAtomRefPropValue<A, K extends keyof A>(
  ref: AtomRef.AtomRef<A>,
  prop: K,
): Accessor<A[K]>

Provee el contexto AtomRegistry al árbol de componentes. Esto es requerido para que funcionen los hooks de átomos.

function RegistryProvider(props: {
  children?: JSX.Element
  initialValues?: Iterable<[Atom.Atom<any>, any]>
  scheduleTask?: (f: () => void) => () => void
  timeoutResolution?: number
  defaultIdleTTL?: number
}): JSX.Element