[英]React child component not rerendering when updating parent component state
[英]react - Why does Parent Component state change when using updating state on Child?
当我通过执行以下操作来修改子组件的状态时:
// inside child component
var stateToSet = this.state;
stateToSet[active] = false;
this.setState(nextState);
父国无需更改即可更改。
我this.state
stateToSet[active] = false
,将引用父组件this.state
,所以我Object.assign
状态和我要修改的每个属性,然后在不修改Parent状态的情况下工作。
我现在想为什么会这样。 这可能是预期的行为吗? 早午餐(我的编译器)和串联文件可能是问题吗?
有任何想法吗?
是的,所以您永远不要像在这里那样直接修改状态,因为this.setState
实际上会触发组件的所有生命周期方法,而像在这里那样修改状态不会。 该函数采用您想要修改的键,因此无需Object.assign
或...
this.setState({ active: false })
我不确定您的意思是“父母/孩子”,以及为什么要设置孩子的父母与父母的孩子有什么关系,但是如果您的意思是当孩子的状态发生变化时不重新渲染父母,那就是预期的行为。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.