【问题标题】:Prevent child from rerender when it updates parents state using parent method as prop in react native防止子级在更新父级状态时重新渲染,使用父级方法作为本机反应的道具
【发布时间】:2020-06-28 12:39:35
【问题描述】:

我有一个父组件和两个子组件。所以我想在第一个组件中执行某些操作时更新第二个组件。假设我有 Component1 和 Component2,还有一个 ParentComponent,所以当我从 Component1 更改 ParentComponent 的状态时,它会更改 Component2 中的状态,但也会重新渲染 component1。我不想重新渲染组件 1。尝试使用回调但没有帮助。

【问题讨论】:

    标签: reactjs native


    【解决方案1】:

    您可以使用memo 来处理这种情况:

    const MyComponent = React.memo(function MyComponent(props) {
      /* only rerenders if props change */
    });
    

    此类组件只有在其自身的状态或道具发生变化时才会重新渲染。

    【讨论】:

    • 我已经尝试过了,但它仍然会重新渲染子组件 1,因为它找到了将父组件的状态更改为更新的道具的功能。你能告诉我应该怎么做才能防止这种情况发生吗?
    猜你喜欢
    • 2018-12-28
    • 1970-01-01
    • 2021-10-29
    • 2021-02-26
    • 2022-09-28
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    • 2021-04-21
    相关资源
    最近更新 更多