当前位置: 首页 > 知识库问答 >
问题:

如何显示来自另一个组件的react引导模式[重复]

南宫星波
2023-03-14

我有一个Meteor React应用程序,我正在开发该应用程序,我想在其中以一种模式实现登录/注册功能。我不知道如何通过单击“注册”或“登录”按钮打开模式

我有以下两个组成部分:

UI/组件/main-布局/头/LoggedOutNav.jsx

import React, { Component } from 'react'

export default class LoggedOutNav extends Component {
    render() {
        return(
            <ul className="nav navbar-nav">
                <li>
                    <a href="#">
                        <i className="fa fa-sign-in" aria-hidden="true"></i>
                        &nbsp;
                        Log In
                    </a>
                </li>
                <li>
                    <a href="#loginRegistration">
                        <i className="fa fa-user-plus" aria-hidden="true"></i>
                        &nbsp;
                        Sign Up
                    </a>
                </li>
            </ul>
        )
    }
}

UI/组件/模态/LoginRegistration.jsx

import React, { Component } from 'react'
import { Modal } from 'react-bootstrap'

export default class LoginRegistration extends Component {
    getInitialState() {
        return { showModal: false }
    }

    close() {
        this.setState({ showModal: false })
    }

    open() {
        this.setState({showModal: true})
    }

    render() {
        return (
            <Modal show={this.state.showModal} onHide={this.close}>
                {/* Irrelevant modal code here */}
            </Modal>
        )
    }
}

如何从其他组件打开模态?

共有1个答案

祁飞飙
2023-03-14
import React, { Component } from 'react'
import { Modal } from 'react-bootstrap'

export default class LoggedOutNav extends Component {
    constructor(){
        this.state = {
            showModal: false,
            activeModal: ''
        }

        this.modalDisplay = this.modalDisplay.bind(this);
    }
    modalDisplay(e){
        this.setState({
            showModal: !this.state.showModal,
            activeModal: e.target.getAttribute('data-tab')
        });
    }
    render() {
        return(
            <div>
                <ul className="nav navbar-nav">
                    <li 
                        onClick={ this.showModal }
                        data-tab = 'login'>
                        <a href="#">
                            <i className="fa fa-sign-in" aria-hidden="true"></i>
                            &nbsp;
                            Log In
                        </a>
                    </li>
                    <li
                        onClick={ this.showModal }
                        data-tab = 'signup'>
                        <a href="#loginRegistration">
                            <i className="fa fa-user-plus" aria-hidden="true"></i>
                            &nbsp;
                            Sign Up
                        </a>
                    </li>
                </ul>
                <div>
                    {
                        this.state.showModal
                        &&
                        <Modal modalType={ this.state.activeModal } onHide={this.modalDisplay} data-tab= ""/>
                    }
                </div>
            </div>
        )
    }
}
 类似资料:
  • 我刚从网站代码中用bootstrap 4尝试了modal css代码: https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-beta/css/bootstrap.min.css https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js https://

  • 问题内容: <%= image_tag "Background.jpg" %> 我如何使上述代码全屏显示Twitter Bootstrap模态弹出窗口,我尝试使用CSS,但无法按照我想要的方式获得它。任何人都可以帮我。 问题答案: 我在Bootstrap 3中使用以下代码实现了这一目标: 通常,如果您对间距/填充问题有疑问,请尝试右键单击(或在Mac上按cmd键单击),然后在Chrome上选择“检

  • 我已经创建了一个2D数组(用作一个游戏板),在另一个类我想采取我的数组,并能够对它执行操作。 我的数组定义(在类中): 现在我想在我的项目中从其他类操纵这个数组。我尝试在未定义它的类中调用此网格 我得到了错误: 不能从静态上下文引用非静态变量 如何从第二个类中引用、编辑和操作?

  • 如果Kafka主题的Avro模式被用作另一个模式的参考,那么更新该模式的正确方法是什么? 例如,假设我们有两个Kafka主题:一个使用Avro模式用户,另一个使用UserAction。 然后我想给用户添加一个额外的字段——一个“姓氏”,所以它看起来像这样:,空以使此更改兼容。要做到这一点,我可以更改Avro模式文件,使用Maven模式插件重新生成POJO,然后如果我将使用KafkaTemplate

  • 问题内容: 我正在为约会应用程序构建Mongoose模式。 我希望每个文档都包含对它们所经历过的所有事件的引用,其中另一个是系统中具有自己模型的架构。如何在架构中对此进行描述? 问题答案: 您可以使用 人口 来描述它 填充是用其他集合中的文档自动替换文档中指定路径的过程。我们可以填充单个文档,多个文档,普通对象,多个普通对象或查询返回的所有对象。 假设您的事件模式定义如下: 为了显示如何使用填充,

  • 我需要将元素添加到我的引导模式中,这样每次打开它时,我都可以看到一些来自我的本地存储的数据,这是我到目前为止所拥有的。我正在尝试添加fn元素 JS: 下面是模态的HTML代码