【问题标题】:React.js Component context of 'this''this' 的 React.js 组件上下文
【发布时间】:2015-04-26 17:15:40
【问题描述】:

我正在使用 reactjs 和 es6 WeakMap 将状态映射到特定组件。我通过使用组件的this 值作为与组件关联的商店的WeakMap 中的键来执行此操作。

当一个 react 组件从 DOM 中卸载然后重新装载时,重新装载的组件是否被赋予了 new this 上下文?

我从 react 组件 life cycle 文档中推断出该组件的新实例是在重新安装时创建的,但没有明确说明是这种情况。如果有更多反应经验的人可以为我澄清这一点,我将不胜感激。

另外,如果有人认为以我试图做的方式在概念上将组件映射到状态是糟糕的设计,请随时加入。

【问题讨论】:

    标签: javascript reactjs


    【解决方案1】:

    当一个组件被卸载时,该实例被丢弃并被垃圾回收。当组件再次挂载时,它将是一个新实例。

    我不确定你的用例是什么,但我认为你可以相当肯定这将永远是这种情况,但认为 React 将来会重用实例作为优化并不是不可能的。

    为什么需要将状态保存在 WeakMap 中,而不是将其存储在层次结构中更高的组件中?

    【讨论】:

      猜你喜欢
      • 2021-08-14
      • 1970-01-01
      • 2019-04-15
      • 2014-06-02
      • 2019-06-10
      • 1970-01-01
      • 2018-01-23
      • 2018-08-05
      • 1970-01-01
      相关资源
      最近更新 更多