reactJS组件在什么情况下卸载?

reactJS组件在什么情况下卸载?,reactjs,Reactjs,我正在尝试诊断错误: 只能更新已安装或正在安装的组件。这通常意味着您在未安装的组件上调用了setState()。这是禁止的 我放置了一条日志消息,如下所示: componentWillUnmount() { console.log('unmounting ', this.props.fieldName) } 因此,我可以看到我的组件正在卸载 但为什么要卸载呢?组件在什么情况下卸载 如果我知道组件卸载的所有可能情况,那么我可以跟踪错误并修复它。根据,每当根元素具有不同类型时,re

我正在尝试诊断错误:

只能更新已安装或正在安装的组件。这通常意味着您在未安装的组件上调用了setState()。这是禁止的

我放置了一条日志消息,如下所示:

  componentWillUnmount() {
    console.log('unmounting ', this.props.fieldName)
  }
因此,我可以看到我的组件正在卸载

但为什么要卸载呢?组件在什么情况下卸载

如果我知道组件卸载的所有可能情况,那么我可以跟踪错误并修复它。

根据,每当根元素具有不同类型时,react决定拆除旧树并从头开始构建新树

componentWillUnmount()将在树的分解过程中激发,因为旧的DOM节点正在被销毁。
这也适用于根目录下的任何节点,它们都将被卸载。

如果没有生成错误的代码,很难说错误是由于什么造成的。这可能是由于版本更改,包括对
isMounted
的弃用。也许有帮助。也许父组件中发生了一些事情,导致卸载组件?此外,我认为React有时会卸载和重新装载组件,而不是更新它(因为有太多的内容需要更新?)。无论如何,我还没有找到关于这方面的好文档,但我也希望有一个合适的解释。