如何退出闪亮的应用程序并返回值 [英] How to exit a Shiny app and return a value

查看:7
本文介绍了如何退出闪亮的应用程序并返回值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

runApp的帮助页显示:

运行一个闪亮的应用程序。此函数通常不返回; 中断R以停止应用程序(通常通过按Ctrl+C或 Esc)。

"正常"是指"总是"吗?有没有办法添加一个"退出"按钮,并将一个值返回给名为runApp的R会话?即使是黑客攻击,这也是方便的功能。我找了几遍,但什么也没找到。我还查看了runApp的源代码,最后一行是return(.globals$retval),所以看起来应该有办法。

是否可以直接设置.globals$retval,然后调用某种中断?shiny包中是否有执行此操作的函数?

推荐答案

有一个stopApp函数可以停止正在运行的应用程序并返回可选值:

myValue <- runApp(list(
  ui = bootstrapPage(
    numericInput('n', 'Number of obs', 100),
    actionButton("myBtn", "Press ME!"),
    plotOutput('plot')
  ),
  server = function(input, output, session) {
    output$plot <- renderPlot({ hist(runif(input$n)) });
    observe({
      if(input$myBtn > 0){
        stopApp(7)
    }
    })
  }
))

停止时:

> myValue
[1] 7

这篇关于如何退出闪亮的应用程序并返回值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆