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

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

我的想法是在客户端上使用Javascript定期轮询服务器.每隔10秒,例如,我可以调用Shiny.setInputValue(“check.fs”,1,{priority:“event”});然后在服务器上我有observeEvent(输入$check.fs,{…}),这会更新被动的.

还有其他想法吗?有没有办法只在没有javascript的服务器上这样做?

最佳答案 有一个名为invalidatelater的函数,你可以使给定的反应上下文无效.这使得可以以特定间隔重新评估函数.

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

希望这可以帮助!

点赞