useCallback 减少渲染 这个地方的‘渲染’具体指的是什么

来源:-

qq_冰糖_5

2021-04-29 17:16

useCallback 可以减少 渲染 这个地方的渲染没懂什么意思   我的理解是调用一次r函数就算渲染了一次,然后父组件state上的变量发生变化 子组件不管props有无变化都会重新渲染 和 useCallback 好像没啥关系了

写回答 关注

1回答

  • yancy
    2021-06-06 11:54:39
    const Child = () => {
      return <div>111</div>
    }
    
    const App = () => {
      const [num, setNum] = useState(1)
    
      const AppChild = useCallback(() => {
        return <Child />
      }, [num])
    
      return (
        <div className="App" onClick={() => setNum(num + 1)}>
          <AppChild />
        </div>
      );
    }

    类似于上述情况,如果当前num没有变化时,返回的依旧是之前计算好的Child内容,并不会重新计算Child组件。

React Hooks2小时快速入门

React Hooks 入门的不二之选

2715 学习 · 22 问题

查看课程

相似问题