Shiny中的数据下载问题

时间:2018-01-22 03:09:33

标签: r shiny

我在Shiny中遇到downloadHandler()的问题:
我想从三个数据集中选择通过此功能下载任何文件。应用程序中的下拉菜单显示了三个可供选择的文件,但是当我点击下载时,它始终是下载的第一个数据集。

整体代码很长,但这是相关部分。如果有人指出我犯了错误的地方,我感激不尽:

ui <- fluidPage(  tabPanel("Downloading Data",
                  titlePanel("Download Data"),
                  sidebarLayout(
                    sidebarPanel(
                      selectInput("dataset",label="Choose a dataset:",c("m.census","f.census","mortality.rates")),
                      downloadButton("downloadData","Download")
                    ),
                    mainPanel(
                      tableOutput("tab3")
                    )
                  )
                )
              )

server <- function(input, output) {
  datasetInput<-reactive({
    switch(input$dataset,
       "m.census"=m.census,
       "f.census"=f.census,
       "mortality.rates"=mortality.rates)
  })

  output$tab3<-renderTable({
    datasetInput()
  })

  output$downloadData<-downloadHandler(
    filename=function(){
      paste(input$dataset,".csv",sep="")
    },

    content=function(file){
      write.csv(datasetInput(),file,row.names = FALSE)
    }
  )
}

0 个答案:

没有答案