useRef和callbackRef(React Hooks)之间的区别

时间:2019-10-24 14:48:35

标签: reactjs react-hooks

我阅读了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);
    }
  }, []);

这是一个沙箱

https://codesandbox.io/s/use-refvscallbackref-djjgg

0 个答案:

没有答案