UNPKG

shelving

Version:

Toolkit for using data in JavaScript.

13 lines (12 loc) 439 B
import { isArrayEqual } from "../util/equal.js"; import { getLazy } from "../util/lazy.js"; import { useProps } from "./useProps.js"; export function useLazy(value, ...args) { const internals = useProps(); // Update `internals` if `args` changes. if (!internals.args || !isArrayEqual(args, internals.args)) { internals.value = getLazy(value, ...args); internals.args = args; } return internals.value; }