@bddh/starling-use-sync-ref
v1.0.0
Published
useRef 的同步版本
Keywords
Readme
useSyncRef
useSyncRef 是 useRef 的一个版本,他的当前值总是同步使用参数值(渲染时的值),并且引用总是只读的。
const syncValueRef = useSyncRef(currentValue);安装
npm i @baidu/starling-use-sync-ref --save使用
将 State 转变为 Ref 被回调函数捕获来避免依赖
import React, { useEffect } from 'react';
import {useSyncRef} from '@baidu/starling-use-sync-ref';
export const Component = ({token}) => {
const [state, setState] = useState();
const stateRef = useSyncRef(state);
useEffect(() => {
// 对 token 的更新做出反应,但不受 state 的影响
const observer = observe(token, () => console.log(stateRef.current));
return () => {
unobserve(observer);
}
}, [token]);
return <AnyComponent />
};