我有一个在访问页面时显示的模式。当单击 Auth 按钮时,模式应该关闭。在服务器部分,我在
observeEvent
上使用了 b_auth
(Auth 按钮 ID
)并输入 removeModal()
函数。当我单击 Auth 按钮时,模式不会关闭。
library(shiny); library(shinydashboard)
fmodal <- function(){modalDialog(id = "authModal",title = "title", textOutput("modalMessage"), textInput("username", "username", value = "username"), passwordInput("password", "password", value = "password"), footer = tagList(
actionButton("b_auth", "Auth"), modalButton("Cancel")))
}
ui <- dashboardPage(dashboardHeader(title = "Basic dashboard"), dashboardSidebar(sidebarMenu(menuItem("Accueil", tabName = "dashboard", icon = icon("dashboard")))), dashboardBody(tabItems(tabItem(tabName = "dashboard",
fmodal() ))))
server <- function(input, output, session) {
observeEvent(input$b_auth, {
removeModal() })}
shinyApp(ui = ui, server = server)
将模态移动到服务器是可行的:
library(shiny); library(shinydashboard)
fmodal <- function(){modalDialog(id = "authModal",title = "title", textOutput("modalMessage"), textInput("username", "username", value = "username"), passwordInput("password", "password", value = "password"), footer = tagList(
actionButton("b_auth", "Auth"), modalButton("Cancel")))
}
ui <- dashboardPage(dashboardHeader(title = "Basic dashboard"), dashboardSidebar(sidebarMenu(menuItem("Accueil", tabName = "dashboard", icon = icon("dashboard")))), dashboardBody(tabItems(tabItem(tabName = "dashboard"))))
server <- function(input, output, session) {
showModal(fmodal())
observeEvent(input$b_auth, {
removeModal() })}
shinyApp(ui = ui, server = server)