如果组件没有子组件,useCallback 是否是更好的选择?



据我所知,useCallback是一种技巧,可以保留函数的引用以使孩子 组件的 React.memo 工作;

但是我仍然有一个问题,如果没有子组件,useCallback 对于提高性能确实是必要的?

我已经尝试了以下代码,包括使用useCallback和不使用useCallback的代码,两者都运行良好;

const Demo = () => {
const [count, setCount] = useState(1);
// const toConsoleLogCount = () => {
//     console.log(count)
// }
const toConsoleLogCount = React.useCallback(() => {
console.log(count)
}, [count])
return (
<div>
<span>Count: {count}</span><br/>
<button onClick={() => setCount(c => c + 1)}>Plus One</button>
{' '}
<button onClick={toConsoleLogCount}>Click Me </button>
</div>
)
}

我查了很多文章,变得更加困惑; 谁能解释一下区别?谢谢。

你标记正确使用回调保留函数的引用。但是在 HTML 标记上使用它没有意义,因为它们在更新父组件时将始终重新呈现。

相关内容

  • 没有找到相关文章

最新更新