【问题标题】:reactive programming multiple action buttons same value rendering issue反应式编程多个动作按钮相同的值呈现问题
【发布时间】:2017-01-10 19:45:55
【问题描述】:

我有 4 个操作按钮...但想要相同的返回值名称。因为它用于其他元素。我将反应元素初始化为

myReactiveDF <- reactiveValues(data=NULL)

myReactiveDF <- eventReactive(input$action1, {
call functions
return(dataframe)
})

myReactiveDF <- eventReactive(input$action2, {
call functions
return(dataframe)
})
.....

但只有最后一个按钮 4 有效。前三个没有。 所有其他元素都使用相同的反应元素 (dataframe) 来填充。 我试过observeEvent,但它没有返回值。

【问题讨论】:

    标签: r shiny


    【解决方案1】:

    按照我的理解,以下代码应满足您的要求:

    library(shiny)
    
    ui <- fluidPage(
      fluidRow(column(2, selectInput('action1', label = "Action1:", choices =  c('a','b') )),
               column(4, selectInput('action2', label = "Action2:", choices =  c('A','B') ))),
      fluidRow( verbatimTextOutput("outputs"))
    )
    
    server = function(input, output, session){
    
      v <- reactiveValues(data = NULL)
    
      observeEvent(input$action1, {
        v$data <- input$action1
      })
    
      observeEvent(input$action2, {
        v$data <- input$action2
      })
    
      output$outputs <- renderText({ 
        if (is.null(v$data)) return()
        v$data
      })
    }
    
    shinyApp(ui = ui, server = server)
    

    如果您需要的不同,请告诉我,以便我修改答案。

    【讨论】:

      猜你喜欢
      • 2013-04-06
      • 1970-01-01
      • 1970-01-01
      • 2017-03-29
      • 2020-01-21
      • 2021-04-13
      • 2019-06-06
      • 1970-01-01
      • 2015-03-08
      相关资源
      最近更新 更多