私はReactに少し新しくなっています。これは少し新しいことの質問であれば私を許してください。イベントメソッドを孫コンポーネントに渡す
私はモーダルポップアップが表示されているかどうかを制御するために状態を使用する基材成分(ページ)を持っている:
constructor(props) {
super(props);
this.state = {
showModal : false,
modalContent : 'Initial Modal Content'
};
this.showModal = this.showModal.bind(this);
this.hideModal = this.hideModal.bind(this);
}
showModal(modalContent) {
this.setState({
showModal : true,
modalContent : modalContent
});
}
hideModal(e) {
this.setState({showModal : false});
}
私の問題は、私は孫のコンポーネントが私のモーダルを開くことができるようにしたいということです。
は、私は孫のコンポーネントに、子コンポーネントに状態を渡すと、これを行うことができます知っている:ちょうど私には少しずさん思わ <PartnersTable showModal={this.showModal} partners={PARTNERS} />
を、多分それはちょうどリアクト方法です。
私はこれを正しくやっているのか、これをよりクリーンな方法で教えてもらえますか?
あなたはGitHubの上で私の完全なアプリを表示することができます。https://github.com/CCChapel/Thy-Kingdom-Come/blob/master/react.js
感謝を!
'showModal'を変更する関数を渡すことは、おそらくこれを行うReactyの方法です。コンポーネントから状態を引き出すことに目を向けることができます。 [Redux](https://github.com/reactjs/redux)または[MobX](https://github.com/mobxjs/mobx)が乱雑になる場合は、 – Tholle
Redux/Fluxはあなたが望むものです。あなたは100%確実な継承がこれに最適な解決策ですか?組成は通常継承よりも良い –