【问题标题】:R shiny 2nd UI action button cannot workR 闪亮的第二个 UI 操作按钮无法工作
【发布时间】:2018-03-25 03:13:43
【问题描述】:

我正在使用登录表单创建一个闪亮的应用程序。登录后切换到第二种形式。

第二个表单上的提交按钮不起作用。我尝试将提交按钮更改为操作按钮,但没有帮助。

我的应用代码如下:

library(shiny)
ui <- fluidPage(
uiOutput("ui")
)

server <- function(input, output, session) {
USER <- reactiveValues(Logged = FALSE)
observe({
if (USER$Logged == FALSE) {
  output$ui <- renderUI({
    tagList(
      h2("Hello", align = "center"),
      div(
        id = "login",
        wellPanel(
          textInput("userName", "Username"),
          passwordInput("passwd", "Password"),
          br(), actionButton("Login", "Log in")
        )
      )
    )
  })
} else if (USER$Logged == TRUE) {
  output$ui <- renderUI({
    tagList(
      tabPanel(""),
      pageWithSidebar(
        headerPanel(
          ""
        ),
        sidebarPanel(
          actionButton("logout", "Logout"),
          sliderInput("range", 
                      label = "Range of interest:",
                      min = 0, max = 100, value = c(0, 100)),
          submitButton("submit")
        ),
        mainPanel(tableOutput("aaa"),textOutput("min_max"))
      )
    )
  })

  output$min_max <- renderText({ 
    paste("You have chosen a range that goes from",
          input$range[1], "to", input$range[2])
  })
}
})

observeEvent(input$Login, {
USER$Logged <- TRUE
})

observeEvent(input$logout, {
USER$Logged <- FALSE
})
}

shinyApp(ui, server)

【问题讨论】:

    标签: r shiny


    【解决方案1】:

    引用闪亮的文档:

    “提交按钮是不寻常的闪亮输入,当您想延迟反应时,我们建议使用 actionButton 而不是 submitButton。请参阅这篇文章 (http://shiny.rstudio.com/articles/action-buttons.html) 了解更多信息(包括如何使用“翻译”代码的演示一个 submitButton 以使用 actionButton 进行编码)。”

    在您的代码中,您需要另一个实例 observeEvent,即 observeEvent(input$submit) 来捕捉按钮按下的发生。

    希望对你有帮助

    【讨论】:

    • 非常感谢!阅读您分享的文章后,我尝试将另一组 reactiveValues 和 observeEvent 添加到响应按钮,现在效果很好。
    • 太棒了!我很高兴这很有帮助。感谢您接受答案。
    猜你喜欢
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-16
    • 1970-01-01
    • 2015-12-12
    • 2020-10-28
    相关资源
    最近更新 更多