親コンポーネントの削除関数を処理する子コンポーネントのモーダルがあります。子供はそれが最も論理的な場所であるように、モーダルの状態(オープンまたはクローズド)を保持しています。 removeItemコードが実行された後React:親から子コンポーネントのモーダルを閉じる
親
removeItem() {
console.log('clicked');
};
...
<DeleteButton deleterecord={()=>this.removeItem(data.row._original._id)}/>
子供
close() {
this.setState({ showModal: false })
};
open() {
this.setState({ showModal: true })
};
render() {
return(
<div>
<Button
bsStyle="primary"
bsSize="small"
onClick={this.open.bind(this)}
>
Delete
</Button>
<Modal
show={this.state.showModal}
onHide={this.close.bind(this)}
bsSize="small"
>
...
は、どのように私は親からモーダルを閉じる必要があります。
あなたは、本質的に子コンポーネントの状態を更新し、親から子コンポーネント内の関数を呼び出すことができます。これをチェックしてくださいhttps://stackoverflow.com/questions/40235420/call-child-method-from-parent-in-react/40235756#40235756 –
参照を使用して子の終了関数を呼び出すように私のソリューションを編集しました。それが機能するかどうか確認してください。 – Rodius