在下载处理程序中使用r闪亮的观察者eEvent

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (7)

我受到使用观察者观察创建CSV文件以供下载的操作的过程的挑战。我认为R-Studio文档声明eventExpr可能是“花括号内的复杂表达式”。这是一个有效的eventExpression吗?我使用这个构造5次,当我的shinyApp启动时,所有五个条件都被触发。

    observeEvent(
        {
        ### Observe the download handler preparing for CSV download
        output$Wire_Centers.csv <- downloadHandler(
            filename = "Wire_Centers.csv",
            content = function(file) {
                write.table(WC_List_2(), file, row.names=FALSE, col.names = TRUE, sep=',') ### end write.table
                } # End content function
            ) # End downloadHandler
            }, { # End observered event, start log
        logUse("WC_Download")
        }) # end observeEvent output condition

任何想法或建议?

提问于
用户回答回答于

正如您所提到的,所有五个都是在启动时调用的。代码不绑定到输入$或其他更改,因此它只运行并报告started。请考虑是否希望它在下载完成后报告,或者是否希望在用户输入上运行代码。

用户回答回答于

我通过添加日志函数调用作为downloadHandler的内容函数的第一个子句来完成添加活动日志操作。呼叫logUse("WC_Download")根据需要运行,并且适当增加活动日志。

    output$Wire_Centers.csv <- downloadHandler(
        filename = "Wire_Centers.csv",
        content = function(file) {
            logUse("WC_Download")
            write.table(WC_List_2(), file, row.names=FALSE, col.names = TRUE, sep=',') ### end write.table
            }, # End content function
        ) # End downloadHandler

扫码关注云+社区

领取腾讯云代金券