我阅读了React的文档,他们提到:
如果您想在React附加或分离ref时运行一些代码 一个DOM节点,您可能想使用回调ref。
为了测量DOM节点的位置或大小,可以使用 回调引用。
但是,我仍然不明白useuse和callbackRef之间的区别,有人可以提供更好的解释吗?
例如,如果useRef和callbackRef不同,为什么以下两个代码具有相同的结果?
useRef:
const h1Ref = React.useRef(null)
React.useEffect(() => {
setHeight(h1Ref.current.getBoundingClientRect().height);
},[])
回调参考:
const measuredRef = useCallback(node => {
if (node !== null) {
setHeight(node.getBoundingClientRect().height);
}
}, []);
这是一个沙箱