我的闪亮应用程序的www目录中有一个PDF.我希望该文件可供下载.我怎样才能做到这一点.
下载示例运行良好,但不知道将其用于从www目录下载PDF.
## Only run examples in interactive R sessions
if (interactive()) {
ui <- fluidPage(
downloadLink("downloadData", "Download")
)
server <- function(input, output) {
# Our dataset
data <- mtcars
output$downloadData <- downloadHandler(
filename = function() {
paste("data-", Sys.Date(), ".csv", sep="")
},
content = function(file) {
write.csv(data, file)
}
)
}
shinyApp(ui, server)
}
Run Code Online (Sandbox Code Playgroud)
Tom*_*los 10
看一下downloadHandler
函数文档,它有两个没有默认值的参数:filename和content.
filename是basecaly将要下载的文件的名称.它不属于一个功能.filename = "your-pdf-name.pdf"
与无参数函数中的定义一样多.
内容,在另一方面,创建与将要下载的内容进行临时文件.在大多数情况下,您将创建一个文件,该文件将通过您在应用程序中创建的内容来实现.
这不是你的情况,我的解决方案提供了我们在巴西称为"gambiarra"的东西:它将你想要下载的文件复制到闪亮需要的文件中downloadHandler
.(我试过把它定义为文件的路径,但它不起作用)
ui <- fluidPage(
downloadLink("downloadData", "Download")
)
server <- function(input, output) {
output$downloadData <- downloadHandler(
filename = "your-pdf-name.pdf",
content = function(file) {
file.copy("www/teste.pdf", file)
}
)
}
shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)