我正在构建我的第一个Shiny应用程序并且一直在努力解决一个问题,我甚至不确定是否可以这样做。
我想允许用户点击链接(或选择某个内容或点击按钮;某些用户操作),之后我希望在用户面前打开另一个Shiny应用程序(前一个可能关闭我不再关心它了。换句话说,我想做一些类似下面的工作:
if(input$datasetlist == "cars"){
runApp("C:/.../readdata")
}
当然,尝试这个天真的代码会返回一个警告:
Error in startServer("0.0.0.0", port, httpuvCallbacks) :
Failed to create server
如果可能的话,对此的正确方法是什么?
答案 0 :(得分:3)
现在没有办法在Shiny中本地执行此操作,但您可能对Shiny Server感兴趣。它允许您同时托管多个应用程序。它将根据应用程序是否被使用来管理应用程序的启动和关闭。
因此,您可以在Shiny Server中托管所有应用,然后提供常规链接(a(href="/anotherApp")
),以允许用户在应用之间导航。