如何在Shiny应用程序中监控文件系统事件

时间:2018-05-23 15:29:46

标签: r shiny

如何使用Shiny应用程序实时监控文件系统(或其他外部事件)的更改?例如,假设我有一个仪表板应用程序,它提供有关服务器上文件的统计信息。我希望在这些文件发生变化或添加新文件时实时更新我的​​统计数据。

我的想法是在客户端上使用Javascript定期轮询服务器。每隔10秒,例如,我可以拨打Shiny.setInputValue("check.fs", 1, {priority: "event"});,然后在服务器上我会observeEvent(input$check.fs, { ... }),这会更新被动设备。

还有其他想法吗?有没有办法只在没有javascript的服务器上执行此操作?

1 个答案:

答案 0 :(得分:1)

有一个名为invalidatelater的函数,你可以使给定的被动上下文无效。这使得可以以特定间隔重新评估函数。

https://shiny.rstudio.com/reference/shiny/1.0.5/invalidateLater.html

希望这有帮助!