使用 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)