小编Cas*_*raH的帖子

如何使用 Hooks API 在 React 中避免不必要的渲染

请跟随我的代码段下面,当我点击任何按钮(添加,编辑,删除)我所有的部件得到重新渲染,包括Title它没有成分propsstats。如果我有几个组件可能没问题,但假设我有超过15 个或更多的组件来获取/保存数据,这是可以的还是应该避免?

我尝试使用useCallback钩子(使用handleRemove),但显然这不能按预期工作。

const Button = ({ title, count, onClick }) => {
  console.log(`Rendering ${title}`)
  return (
    <button onClick={onClick}>
      {title} ({count})
    </button>
  )
}
const Header = () => {
  console.log("Rendering Title")
  return <h1>App Title</h1>
}

const Parent = () => {
  const [add, setAdd] = React.useState(0)
  const [edit, setEdit] = React.useState(0)
  const [remove, setRemove] = React.useState(0)
  
  const handleAdd = () => setAdd(add + 1)
  const …
Run Code Online (Sandbox Code Playgroud)

reactjs react-dom react-hooks usecallback

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

标签 统计

react-dom ×1

react-hooks ×1

reactjs ×1

usecallback ×1