1

我在我的反应应用程序中使用 mdbreact 模态但面临一些问题。我尝试在我的页面中包含模态组件,但模态尚未打开,尽管它正在将类“modal-open”应用于阻止正文滚动的正文标记。

我的代码如下:

import React, { Component } from 'react';
import { Modal, ModalBody, ModalHeader, ModalFooter } from 'mdbreact';

class GroupContainer extends Component {
    constructor() {
        super();
        this.state = {
            modal: false,
        }
    }

    renderModal = () => {
        this.setState({
            modal: true,
        })
    }

    closeModal = () => {
        this.setstate({
            modal: false,
        })
    }

    render() { 
        return (
        <div>
             <Modal isOpen={this.state.modal} toggle={() => this.renderModal()} fullHeight position="bottom">
              test
            </Modal>

        </div>
        )
    }
};


export default GroupContainer;

状态“模态”是错误的,但模态开放类仍在应用中。只有当状态为真时才必须应用它。我将在单击外部按钮时将状态设为 true 以显示此模式。有什么线索吗?

4

1 回答 1

-1

每个导入都是 MDB(name) ex MDBModal, MDBModalBody。同样对于切换,您不需要两个功能,因为您的代码会混淆。模态切换示例

toggle = () => {
  this.setState({
    modal: !this.state.modal
  })
}

//for multiple modals
//modal1
//modal2
//modal3

toggle = nr => () => {
  let modalNumber = 'modal' + nr;
  this.setState({
    [modalNumber]: !this.state[modalNumber]
  })
}

于 2019-05-17T12:17:40.927 回答