在我的Shiny应用程序中,我运行计算,生成数据框,并希望用户能够保存(下载)它。
我在ui.R中的相关代码:
textInput("downFile","Save the File:", value = "Results File"),
downloadButton('downFile',"Save File"),
我在server.R中的相关代码:
output$downFile <- downloadHandler(
filename = function() {
paste0(input$downFile, " ", Sys.Date(), ".csv")
},
content = function(file) {
write.csv(MyMainFunction()$mydataframe, file, row.names = FALSE)
}
)
一切正常。但我有两个问题:
两个问题:
在主函数(MainFunction)中的计算完成之前,是否可以使按钮不可见?
如何让用户选择所需的文件夹以将结果下载到? (如“保存在......”)
非常感谢!
答案 0 :(得分:1)
问题1:使用shinyjs包了解更多https://deanattali.com/shinyjs/
library(shinyjs)
disable("downFile") # or use hide() Before all calculations
enable("downFile") # or use show() After
对于问题2:我认为这更多是关于设置浏览器而不是闪亮的
如果您使用的是Chrome,请转到高级设置并启用