Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R下载后检测并删除本地文件_R_Shiny_Shiny Server - Fatal编程技术网

R下载后检测并删除本地文件

R下载后检测并删除本地文件,r,shiny,shiny-server,R,Shiny,Shiny Server,是否可以检测用户在单击下载按钮后何时下载文件?我尝试了此操作,但observeEvent不能与输出一起使用?: observeEvent(output$downloadData2, {}) 下载处理程序示例: ui.r: 服务器.r: output$downloadData2 <- downloadHandler( filename <- function() { paste("results.zip") }, content <- function(fi

是否可以检测用户在单击下载按钮后何时下载文件?我尝试了此操作,但observeEvent不能与输出一起使用?:

observeEvent(output$downloadData2, {})
下载处理程序示例:

ui.r:

服务器.r:

output$downloadData2 <- downloadHandler(
filename <- function() {
    paste("results.zip")
},      
content <- function(file) {
        workingdir = getwd()
        setwd("tmp/")
        file.copy(paste(direc,'.zip',sep=''), file)      
        setwd(workingdir)                
    },
    contentType = "application/zip"
)

output$downloadData2您应该使用
input$downloadData2
@warmoverflow下载处理程序没有注册到input。不起作用。你能澄清一下你想做什么吗?用户单击一个按钮,然后下载一个文件,然后该文件将从服务器上删除?出于好奇,您已经知道了吗?只是遇到了同样的问题。问题是我们似乎无法在通过renderUI函数服务器端创建的按钮上使用observeEvent()。@BogdanRau我想出了一个更好但不同的解决方案。我不是在用户下载文件时删除文件,而是在用户退出浏览器会话时删除临时目录中的所有文件。
会话$onSessionEnded(function(){
取消链接(sessiontemp,recursive=TRUE)
}
output$downloadData2 <- downloadHandler(
filename <- function() {
    paste("results.zip")
},      
content <- function(file) {
        workingdir = getwd()
        setwd("tmp/")
        file.copy(paste(direc,'.zip',sep=''), file)      
        setwd(workingdir)                
    },
    contentType = "application/zip"
)