Согласно документам , downloadHandler должен принимать contentType в виде строки.Поскольку contentType не является константой, я пытаюсь передать переменную или реактив.Но приложение завершается ошибкой, когда contentType не является строго строкой.Как я мог передать значение переменной?
Я пытался function(){}
, reactive
, eventReactive
.Что меня смущает, так это то, что он прекрасно работает для filename = function(){}
.
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)
},
contentType = function() {
"text/csv"
}
)
}
shinyApp(ui, server)
. В этом случае сообщение об ошибке is.na() applied to non-(list or vector) of type 'closure'
и файл загружен неправильно (server error
).