UNPKG

@bedrock-layout/use-stateful-ref

Version:

bedrock-layout useStatefulRef

18 lines (17 loc) 358 B
import c from "react"; function s(u) { let [e, f] = c.useState(u); const { current: r } = c.useRef({ current: e }); return Object.defineProperty(r, "current", { get: () => e, // eslint-disable-next-line functional/no-return-void set: (t) => { Object.is(e, t) || (e = t, f(t)); } }), r; } export { s as useStatefulRef };