我正在构建一个闪亮的应用程序,用户可以在其中完成一项调查,并根据他们的回答为他们推荐不同的模板供他们使用。模板都是高度格式化的 excel 文件(例如,上面有图片、未对齐的标题等),就像我在这里上传的屏幕截图一样。不幸的是,stackoverflow 不允许我上传 excel 文件以使其完全可重现,但如果您可以使用任何非表格 excel 文件运行它,它会起作用。[![在此处输入图像描述][1]][ 1]
这些模板全部上传到服务器,用户输入不影响它们。我已经尝试过其他人的示例,例如 [one][2],但我不断收到错误。
我如何得到它,所以当用户单击下载按钮时,他们得到的 excel 文件与它显示的完全一样?
library(readxl)
library(shiny)
library(writexl)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
),
mainPanel(
downloadButton("downloadData", "Download Fancy Excel File")
)))
server <- function(input, output) {
output$downloadData <- downloadHandler(
filename = function() {
paste("file", "xlsx", sep='')
},
content = function(file) {
myfile <- srcpath <- 'Home/Other Layer/Fancy Template.xlsx'
file.copy(myfile, file)
}
)
}
# Run the application
shinyApp(ui = ui, server = server)
~~~~
[1]: https://i.stack.imgur.com/FK034.png
[2]: https://stackoverflow.com/questions/39449544/shiny-download-an-excel-file