Вот класс приложения. Возвращает div или null в качестве значения значения в функции рендеринга. Не должна ли функция componentWillUnmount приложения также выполняться при возврате null? Я не понимаю, что выполняется только функция componentWillUnmount классов Header и Body.
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {value : true};
}
componentWillUnmount() {
console.log('App componentWillUnmount');
}
btnClick() {
this.setState({
value: ! this.state.value
});
}
render () {
if(this.state.value) {
return (
<div>
<button onClick={this.btnClick.bind(this)}>Btn</button>
<Header id={this.state.value}></Header>
<Body></Body>
</div>
)
} else {
return null;
}
}
}
ReactDOM.render(
<App id="3"/>,
document.getElementById('root')
);