小编cod*_*ard的帖子

如何在使用 useCallback 时记住高阶函数?

使用 React Hooks,当我们想要记住函数的创建时,我们有钩子useCallback。这样我们就有:

const MyComponent = ({ dependancies }) => {
  const memoizedFn = useCallback(() => { 
    /* ... */ 
  }, [dependancies]);

  return <ChildComponent onClick={memoizedFn} />;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,我们如何记忆钩子中高阶函数的值,useCallback例如:

const MyComponent => ({ dependancies, anArray }) => {
  const memoizedFnCreator = useCallback((id) => () => {
    /* ... */
  }, [dependancies]);

  /* 
   * How do we make sure calling "memoizedFnCreator" does not result in
   * the ChildComponent rerendering due to a new function being created?
   */
  return …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-hooks

2
推荐指数
1
解决办法
1517
查看次数

标签 统计

javascript ×1

react-hooks ×1

reactjs ×1