问题描述
我正在尝试创建一个可以在 MAC 计算机上使用 R Shiny 下载的 .zip 文件夹。该应用程序运行良好,并且 zip() 函数在不在应用程序中时运行良好 - 但是当两者在一起时 zip() 函数停止工作,并且当我单击应用程序中的下载链接时出现以下错误:
[1] "/var/folders/yt/1vghl8k96k73y8pfjnpkdzcsv87dy2/T//RtmpfHjfKp"
Warning: Error in if: argument is of length zero
[No stack trace available]
这是我的代码:
shinyApp(
ui = navbarPage("Main Title",theme = shinytheme("flatly"),tabPanel("First Tab",sidebarLayout(
sidebarPanel(
selectInput("sps",...
),radioButtons("mod",...
),radioButtons("radioSelection","rang",sliderInput("year",downloadLink('downloadData1','Click here to download data',class = "butt"),tags$head(tags$style(".butt{background-color:lightgray;} .butt{color: black;}"))
)
)
)
),server = function(input,output,session) {
output$downloadData1 <- downloadHandler(
filename = function() {
name1 <- sub(" ","",input$sps)
if(input$mod == "X") {
name_part <- "_local-estimator"} else {
name_part <- "_spatially-smooth"
}
paste(input$year,name1,"_",input$rang,name_part,"_ArrivalDate.zip",sep="")
},content = function(name1) {
fs <- c()
tmpdir <- tempdir()
setwd(tempdir())
print (tempdir())
arrtab <- arr_csv(input$year,input$sps,input$mod,input$rang)
write.csv(arrtab,file = "data.csv")
write.table(read_me1,file = "read_me.txt",row.names = FALSE,col.names = FALSE)
fs <- c("data.csv","read_me.txt")
print(fs)
zip(
zipfile=name1,files=Sys.glob(fs),recurse = TRUE,include_directories = TRUE,root = "."
)
if(file.exists(name1)) {file.rename(name1,name1)}
},contentType = "application/zip"
)
}
)
我已经检查了此解决方案 Shiny R Zip multiple PDFS for download 并且无法使其工作。
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)