父母的状态发生了变化,但是孩子们从未重新渲染自己。
class Parent extends Component<{}, {isSelected: boolean}> {
constructor(props: any) {
super(props)
this.state = {
isSelected: false
}
}
shouldComponentUpdate() {
return false
}
onClick = () => {
this.setState( (state) => {
return {isSelected: !this.state.isSelected}
})
}
render() {
return (
<Button onClick={this.onClick}>
<Child isSelected={this.state.isSelected}/>
</Button>
)
}
}
我知道,ComponentComponentUpdate()不会影响其子级的重新渲染,那么为什么不重新渲染子级呢? (如果我删除了shouldComponentUpdate(),一切都会按预期进行)