【发布时间】:2020-06-28 12:39:35
【问题描述】:
我有一个父组件和两个子组件。所以我想在第一个组件中执行某些操作时更新第二个组件。假设我有 Component1 和 Component2,还有一个 ParentComponent,所以当我从 Component1 更改 ParentComponent 的状态时,它会更改 Component2 中的状态,但也会重新渲染 component1。我不想重新渲染组件 1。尝试使用回调但没有帮助。
【问题讨论】:
我有一个父组件和两个子组件。所以我想在第一个组件中执行某些操作时更新第二个组件。假设我有 Component1 和 Component2,还有一个 ParentComponent,所以当我从 Component1 更改 ParentComponent 的状态时,它会更改 Component2 中的状态,但也会重新渲染 component1。我不想重新渲染组件 1。尝试使用回调但没有帮助。
【问题讨论】:
您可以使用memo 来处理这种情况:
const MyComponent = React.memo(function MyComponent(props) {
/* only rerenders if props change */
});
此类组件只有在其自身的状态或道具发生变化时才会重新渲染。
【讨论】: