我正在构建我的第一个Shiny应用程序 - 您可以在此访问实时版本:http://justmytwospence.shinyapps.io/StepLively/
它工作正常,但您可以在加载页面后立即看到我的问题.所有的输出都依赖于一个需要一段时间才能执行的反应导体(它实际上执行逐步回归的功能).因此,我的输出显示错误消息,直到无功导线完成执行.这只需要几秒钟,但它非常烦人和未经抛光.
有没有办法安排无功端点的执行,以便在无功导线完成之前它们不会执行?或者 - 但不太有利 - 有一种方法可以测试无功导体的可用性,并在无法使用时显示其他东西.有点像if (reactive_conductor_function()) {blah}.然而,这不起作用,因为它的功能.
编辑:我添加了一个"执行"按钮以完全绕过此问题,因此目前在应用程序中不明显.
你可以尝试这样的事情:
if(is.null(reactive_conductor_function()){return(NULL)}
#rest of your code follows
Run Code Online (Sandbox Code Playgroud)
或者
reactive_data <- reactive_conductor_function()
if(is.null(reactive_data)){return(NULL)}
#rest of your code follows
Run Code Online (Sandbox Code Playgroud)
这两者都将阻止该代码块中下游发生任何事情,直到reactive_conductor_function有数据之后。我不确定第一个版本,但我经常使用此代码的第二个版本。
如果您可以发布一些代码示例,我将能够提供更好的建议!