Я использую компоненты Dialog от primereact и внедряю его в каждый интерфейс, который мне нужен, я знаю, что это неправильный способ, поэтому я хочу создать для этого общие компоненты.
но я потерял, как управлять действиями и состоянием между родительским и дочерним компонентами, например, как инициировать действие, согласованное в родительском компоненте.
import React, { Component } from 'react';
import { Dialog } from 'primereact/components/dialog/Dialog';
export default class Popup extends React.Component {
constructor(props) {
super(props);
this.agree = this.agree.bind(this);
this.cancel = this.cancel.bind(this);
this.state = {
visible: false,
};
}
cancel(event) {
this.setState({ visible: false });
}
agree(event) {
}
render() {
return (
<div><Dialog header="Delete Confirmation" visible={this.state.visible} width="350px" modal={true} onHide={() => this.cancel} maximizable={true} blockScroll={true}>
Are you sure you want to delete?
<div className="footerDialog">
<a className="cancelDialog BtnTrade2 AdvSerachBtn fleft marginr10" icon="pi pi-times" onClick={this.cancel} >NO</a>
<a className="agreeDialog BtnTrade AdvSerachBtn fleft marginL8" icon="pi pi-check" onClick={this.agree} >YES</a>
</div>
</Dialog></div>
)
}
}