etc-hooks
Version:
Etcetera React 业务 Hooks
22 lines (21 loc) • 732 B
JavaScript
import { __read, __spreadArray } from "tslib";
import { useEffect, useMemo, useRef } from "react";
var useCallbackRef = function useCallbackRef(callback) {
var callbackRef = useRef(callback);
useEffect(function() {
callbackRef.current = callback;
});
return useMemo(function() {
return function() {
var _a;
var args = [];
for(var _i = 0; _i < arguments.length; _i++){
args[_i] = arguments[_i];
}
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call.apply(_a, __spreadArray([
callbackRef
], __read(args), false));
};
}, []);
};
export default useCallbackRef;