123456789101112131415161718192021222324252627282930313233343536373839 |
- import { useState } from 'react';
- export function useCallbackRef(initialValue, callback) {
- var ref = useState(function () { return ({
-
- value: initialValue,
-
- callback: callback,
-
- facade: {
- get current() {
- return ref.value;
- },
- set current(value) {
- var last = ref.value;
- if (last !== value) {
- ref.value = value;
- ref.callback(value, last);
- }
- },
- },
- }); })[0];
-
- ref.callback = callback;
- return ref.facade;
- }
|