我正在尝试诊断错误:
只能更新已安装或安装的组件。这通常意味着您在已卸载的组件上调用了setState()。这是一个无操作。
我发的日志信息如下:
componentWillUnmount() {
console.log('unmounting ', this.props.fieldName)
}
因此我可以看到我的组件正在卸载。
但为什么要卸载?在什么情况下组件卸载。
如果我知道组件卸载的所有可能情况,那么我可以追踪错误并修复它。
答案 0 :(得分:1)
根据https://reactjs.org/docs/reconciliation.html,每当根元素具有不同类型时,react都会决定拆除旧树并从头开始构建新树。
在拆除树木时将触发componentWillUnmount(),因为旧的DOM节点被破坏了。 这也适用于根以下的任何节点,它们都将被卸载。