javascript - 在 React JS 中构建引导模式和通知的正确方法?

标签 javascript reactjs ecmascript-6

我想在我的应用程序中使用模态和通知,并且使用旧的 jQuery Bootstrap,创建模态和通知真的很容易,但现在我很困惑如何使用 react 组件系统在虚拟 DOM 中实现它。

这是我认为在 React 组件中构建模态的标准 React 方式:

Index/Router Component >
    Main Layout Component >
        {...Page Components... }
            {...Child Component}
                {<Modal /> or <Notification />}

问题是我不想经常导入和创建 <Modal><Notification />我的子组件中的组件,而不是调用一个实用函数,例如 {app.notify({type: 'success', message: 'some message'})}app.modal({...customconfig})并且都在我的 Main layout component 中定义通过任何子组件触发。

任何帮助都将非常有用,谢谢!

最佳答案

您不需要将 Modal 组件保持在层次结构中。您的 Modal 组件应该是一个独立的组件,它将采用适当的 props 来决定需要显示的内容。例如

<Modal message={"This is my modal"} showOkCancel={true} showYesNo={false} handleOkYes={()=>console.log("OK clicked")} handleCancelNo={()=>console.log("Cancel clicked"} />

在上面的示例中,Modal 接受了一些属性,这些属性将帮助它决定要显示的消息、要显示的按钮以及点击按钮时需要采取的操作。

这种组件可以位于组件层次结构之外,并且可以导入到任何需要显示模态的组件中。父组件只需要传递适当的 Prop 来显示模式。

希望这对您有所帮助。

关于javascript - 在 React JS 中构建引导模式和通知的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46945071/

相关文章:

javascript - 如何在WebGL的texImage2D中裁剪HTMLVideoElement?

javascript - 这是我的代码,我想添加日期选择器事件,它根据日期给出特定记录

reactjs - 保存到数据库后 React Redux 存储状态更新过程

javascript - 什么是解构赋值及其用途?

javascript - 如何迭代数组中的每个数字并将它们与同一数组中的其他数字相加 - JS

javascript - 为什么 propTypes 存在于类中而不存在于其他方法上?

javascript - localstorage setItem() 在某些情况下不起作用

javascript - React 中的承载身份验证

javascript - 如何通过鼠标滚轮水平滚动div,锁定body滚动?

javascript - 在 JQuery/Javascript 中填充和锁定输入表单字段