对话框中没有显示文本(反应js对话框)?

时间:2020-01-12 07:52:12

标签: reactjs react-bootstrap

我将https://www.npmjs.com/package/react-bootstrap-dialog#dialogprompt-generators用于通知生成模块。但仅显示按钮,对话框中不显示任何文本消息。

enter image description here

onClick () {
  this.dialog.show({
    title: 'Greedings',
    body: 'How are you?',
    actions: [
      Dialog.CancelAction(),
      Dialog.OKAction()
    ],
    bsSize: 'small',
    onHide: (dialog) => {
      dialog.hide()
      console.log('closed by clicking background.')
    }
  })
}

这是我用于此的代码部分。帮帮我..

我在项目开发中使用了材质仪表板react free模板,因此在此对话框中不起作用,但是当我使用codeandbox时,它可以正常工作,它不能与材质仪表板一起使用吗?我不明白为什么,如果您知道,请帮助我。

codesandbox.io/s/amazing-glade-lh5tl

import React from "react"; 

import firebase from "../../config/firebase.js"; 
import PropTypes from "prop-types"; 
import carfix from "./s.jpg"; 
// react plugin for creating charts 
import {Link, withRouter} from 'react-router-dom'; 
import ChartistGraph from "react-chartist"; // @material-ui/core 
import withStyles from "@material-ui/core/styles/withStyles"; 
import Icon from "@material-ui/core/Icon"; // @material-ui/icons 
import Store from "@material-ui/icons/Store"; 
import Warning from "@material-ui/icons/Warning"; 
import DateRange from "@material-ui/icons/DateRange"; 
import LocalOffer from "@material-ui/icons/LocalOffer"; 
import Update from "@material-ui/icons/Update"; 
import ArrowUpward from "@material-ui/icons/ArrowUpward"; 
import AccessTime from "@material-ui/icons/AccessTime"; 
import Accessibility from "@material-ui/icons/Accessibility"; 
import BugReport from "@material-ui/icons/BugReport"; 
import Code from "@material-ui/icons/Code"; 
import Cloud from "@material-ui/icons/Cloud"; // core components 
import GridItem from "components/Grid/GridItem.jsx"; 
import GridContainer from "components/Grid/GridContainer.jsx"; 
import Table from "components/Table/Table.jsx"; 
import Tasks from "components/Tasks/Tasks.jsx"; 
import CustomTabs from "components/CustomTabs/CustomTabs.jsx"; 
import Danger from "components/Typography/Danger.jsx"; 
import Card from "components/Card/Card.jsx"; 
import CardHeader from "components/Card/CardHeader.jsx"; 
import CardIcon from "components/Card/CardIcon.jsx"; 
import CardBody from "components/Card/CardBody.jsx"; 
import CardFooter from "components/Card/CardFooter.jsx"; 
import WorkAssign from "pages/work_assignmt.js"; 
import WorkDone from "pages/work_done.js";  
import Modal from 'react-bootstrap/Modal';
import {Button} from 'react-bootstrap' 
import Dialog from 'react-bootstrap-dialog'
import { bugs, website, server } from "variables/general.jsx";
import {   dailySalesChart,   emailsSubscriptionChart,   completedTasksChart } from "variables/charts.jsx";
import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.jsx";

class Dashboard extends React.Component {   constructor(props) {
    super(props);
    this.onClick = this.onClick.bind(this)
    this.state = {
      field1:0,
      field2:0,
      field3:0,
      isDialogOpen: false
    };   }

  onClick () {
    this.dialog.show({
        title: 'Greedings',
        body: 'How are you?',
        actions: [
          Dialog.CancelAction(),
          Dialog.OKAction()
        ],
        bsSize: 'small',
        onHide: (dialog) => {
          dialog.hide()
          console.log('closed by clicking background.')
        }
      })   }

  componentWillMount = async() =>{
    this.setFieldData();   };


  handleChange = (event, value) => {
    this.setState({ value });   };

  handleChangeIndex = index => {
    this.setState({ value: index });   };

  setFieldData = async() => {

    var ref = firebase.database().ref("Daily Work Data").child("02-10-2019").child("Field 1"); 
    var sum=0;



    var ref = firebase.database().ref("Daily Work Data").child("02-10-2019").child("Field 2"); 
    sum=0;



    this.setState({field2: sum}); 

    var ref = firebase.database().ref("Daily Work Data").child("02-10-2019").child("Field 3"); 
    sum=0;

    await ref.once('value',function (snapshot) {       

      snapshot.forEach(element => {
        sum = sum + element.val().amount;
      });  
    });  

    this.setState({field3: sum}); 


  };


  render() {   const { classes } = this.props;
    return (
      <div
       className="App"
       style={{
       backgroundImage: `linear-gradient(0deg,rgba(20,100,20,0.5), rgba(9, 93, 225, 0.0)),url(${carfix})`
       }}>

     <div className="wrappe">
      <div>
        <Dialog ref={(component) => { this.dialog = component }} />
      </div>

      <div>
        <GridContainer>
          <GridItem xs={12} sm={6} md={4}>
          <Card>
            <Button variant="underlined"      
            onClick={this.onClick}>
              <CardHeader color="warning" stats icon>
                  <CardIcon color="warning">
                      <i class="material-icons">notifications_active</i>
                  </CardIcon>
                      <p className={classes.cardCategory}></p>
                     <h4 className={classes.cardTitle}>New Notifications</h4>
              </CardHeader>
              <CardFooter stats>
                <div className={classes.stats}>
                  <hr/>
                </div>
              </CardFooter>
            </Button>
          </Card>
          </GridItem>


          <GridItem xs={12} sm={6} md={4}>
          <Card>
            <Button variant="underlined"           
             onClick={this.onClick}>
              <CardHeader color="primary" stats icon>
                <CardIcon color="primary">
                   <i class="material-icons">pan_tool</i>
                </CardIcon>
                  <p className={classes.cardCategory}></p>
                  <h4 className={classes.cardTitle}>Pending Notifications</h4>
              </CardHeader>
              <CardFooter stats>
                 <div className={classes.stats}>
                    <hr/>
                 </div>
              </CardFooter>
             </Button>
            </Card>
          </GridItem>


          <GridItem xs={12} sm={6} md={4}>
          <Card>
            <Button variant="underlined" 
            onClick={this.onClick}>
              <CardHeader color="danger" stats icon>
                <CardIcon color="danger">
                   <i class="material-icons">thumb_up</i>
                </CardIcon>
                   <p className={classes.cardCategory}></p>
                   <h4 className={classes.cardTitle}>Responded Notifications</h4>
              </CardHeader>
              <CardFooter stats>
                <div className={classes.stats}>
                  <hr/>                 
                </div>
              </CardFooter>
             </Button>
          </Card>
          </GridItem>

        </GridContainer>

        <div>       
      </div>
    </div>   </div>  </div>
    );   } }

Dashboard.propTypes = {   classes: PropTypes.object.isRequired };

export default withStyles(dashboardStyle)(Dashboard);

0 个答案:

没有答案