在同一个事件中闪亮多个对象Reactive

shiny multiple objects in the same eventReactive

我有一个反应对象列表,我用这样的东西定义:

myReactiveList <- reactive({

object1 <- some calculation depending on user inputs

object2 <- some calculation depending object 1 and on other user inputs

# put both in reactive list with:
list(
    reactiveObject1 <- reactive({object1}) 
    reactiveObject2 <- reactive({object2}) 
    )
})

现在我想添加一个操作按钮,以便仅在选择了所有用户输入并按下 "Go" 后才会执行。

不幸的是语法 reactive(input$go , {}) 似乎不起作用。它只适用于 eventReactive(input$go , {}) ,而 eventReactive(input$go , {}) 又一次只能处理一个对象。

将 input$go 合并到我的顺序反应列表中的最佳方法是什么?

您可以将 object1object2 包装在一个列表中,稍后分别使用 myReactiveList()[[1]]myReactiveList()[[2]] 调用它们 -

myReactiveList <- eventReactive(input$go, {
  object1 <- some calculation depending on user inputs

  object2 <- some calculation depending object 1 and on other user inputs

  # put both in a list
  list(object1, object2)
})