linkmore-design
Version:
🌈 🚀lm组件库。🚀
24 lines (21 loc) • 588 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
// * 解决useCallback的依赖传导问题,存储事件
function useEvent(handler) {
const handlerRef = (0, _react.useRef)(null);
// 同步,运行时间在布局前
(0, _react.useLayoutEffect)(() => {
handlerRef.current = handler;
});
// 存储方法函数
return (0, _react.useCallback)((...args) => {
const fn = handlerRef.current;
return fn?.(...args);
}, []);
}
var _default = useEvent;
exports.default = _default;
;