1

我正在制作一个闪亮的应用程序,它显示带有数据库查询结果的数据表。我使用内部包来检索数据,我确信它可以正常工作。

当我想显示其中一个数据库的数据表时,我没有问题,但是当我想显示另一个时,表根本不会出现。

我使用响应函数来检索数据并使用 renderDataTable() 来显示它。这是代码:

shinyServer(function(input, output) {
    dataset <- reactive({
    if(input$experiment!=""&!is.null(input$experiment)){
      if(input$db=="db1"){
        data <- querydb1(experimentID=input$experiment)
      }
      if(input$db=="db2"){
        data <- querydb2(experimentID=input$experiment)
      }
    }
  })



  # output table
  output$data <- renderDataTable({
    dataset()
  })
})
4

1 回答 1

1

你的反应需要返回一些东西。尝试这个:

if(input$experiment!=""&!is.null(input$experiment)){
  if(input$db=="db1"){
    data <- querydb1(experimentID=input$experiment)
  }
  if(input$db=="db2"){
    data <- querydb2(experimentID=input$experiment)
  }
  return(data)
}
于 2014-04-02T23:24:06.597 回答