Skip to main content

UseAsyncDataResT

import { type UseAsyncDataResT } from '@dr.pogodin/react-global-state';

UseAsyncDataResT is the type of result returned by useAsyncData() and useAsyncCollection() hooks.

It is defined as the generic type:

type UseAsyncDataResT<DataT> = {
data: DataT | null;
loading: boolean;
reload: (loader?: AsyncDataLoaderT<DataT>) => Promise<void>;
timestamp: number;
};

Generic Parameters

Fields

  • dataDataT | null — The datum, if loaded; null otherwise.

  • loadingbooleantrue if the loading operation is currently underway; false otherwise.

  • reload(loader?: AsyncDataLoaderT<DataT>) => Promise<void> — Imperatively triggers a reload of data at the corresponding path in the global state, using provided custom loader, if any, or otherwise the loader given to the corresponding useAsyncData() hook.

    Tips
    • This method is intended for imperative code (e.g. UI event handlers). When data should be reloaded in response to local or global state changes, prefer to use deps option of UseAsyncDataOptionsT to manage reloads.

    • This method is a stable function — it is guaranteed to remain the same across re-renders of the host component.

  • timestampnumber — The timestamp (milliseconds) when data, if any, were loaded (or the last time refreshed).

    caution

    If data is null because async data loaded into the state do not satisfy the maxage limit, the value of timestamp still will correspond to the time when those async data were loaded into the state.