手写简易useEvent
作者:互联网
function useEvent(handler) {
const handlerRef = useRef(null);
// 视图渲染前及每次 shouldUpdate 时更新 handlerRef.current
useLayoutEffect(() => {
handlerRef.current = handler;
});
// 用 useCallback + 空依赖,确保返回函数的引用一致
return useCallback((...args) => {
const fn = handlerRef.current;
return fn(...args);
}, []);
}
标签:handlerRef,useEvent,const,...,useCallback,current,简易,handler,手写 来源: https://www.cnblogs.com/poifa/p/16291572.html