tutorial publicar examples ejemplos app r shiny

publicar - Cómo salir de una aplicación brillante y devolver un valor



shiny r tutorial (1)

La página de ayuda de runApp dice:

Ejecuta una aplicación brillante. Esta función normalmente no regresa; interrumpe R para detener la aplicación (generalmente presionando Ctrl + C o Esc).

¿"Normalmente" significa "siempre"? ¿Hay alguna manera de agregar un botón "salir" y devolver un valor a la sesión R que llamó a runApp ? Incluso si es un truco, esta sería una funcionalidad conveniente. He intentado buscar pero no he encontrado nada. También miré la fuente de runApp , la última línea es return(.globals$retval) , por lo que parece que debería haber una forma.

¿Puedo configurar .globals$retval directamente y luego llamar a algún tipo de interrupción? ¿Hay una función en el paquete shiny que hace esto?


Hay una función stopApp que detiene la aplicación en ejecución y devuelve un valor opcional:

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) } }) } ))

Al detenerse:

> myValue [1] 7