Создать общий компонент Dialog для всех интерфейсов веб-сайтов - PullRequest
0 голосов
/ 27 марта 2019

Я использую компоненты 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>
    )
}

}
...