ボタンをクリックすると、コンソールに「1」が表示されますが、「2」は表示されません。それはなぜ起こるのですか?この問題を解決してもらえますか?私は本当になぜ私の2番目のコンポーネントが更新されないのかわかりません。あなたの例では私のコンポーネントは再レンダリングしません
class App extends PureComponent {
constructor() {
super();
this.state = {
name: 'Vasya'
}
this._onChange = this._onChange.bind(this);
}
_onChange(name) {
this.setState({
name: name
});
}
render() {
console.log(1);
return {
<div>
<Button onClick={this._onChange('Petr')} />
<AnotherComponent username={this.state.name} />
</div>
}
}
}
class AnotherComponent extends PureComponent {
const {
username
} = this.props
render() {
console.log(2);
return {
<div>
test
</div>
}
}
}
export default App;
そのあなたがPureComponentを使用しているため。コンポーネントに変更して、私はそれが解決すると思う。問題をよりよく理解するために、PureComponentについて少し読んでください。 – bennygenel
私はあなたが何かを見て驚いています。私は 'return {