单击按钮后,在闪亮应用程序的主面板中显示文本

Jea*_*uda 2 r shiny

我正在努力学习闪亮.我想在单击Go按钮后才在主面板中显示文本.因此,当应用加载时,主面板中将没有文本.我该怎么做?以下是来自示例的调整代码:

library(shiny)

UI<-fluidPage(

  titlePanel("Reactivity"),

  sidebarLayout(
    sidebarPanel(
      textInput("caption", "Caption:", "Data Summary"),

      textInput("TEXT1", "tEXT:", "Data Summary"), 
      submitButton("Go")
    ),

    mainPanel(
      h3(textOutput("caption", container = span)),
      h3(textOutput("TEXT1", container = span))
    )
  )
)

Server<-function(input, output) {

  output$caption <- renderText({
    input$caption
  })

  output$TEXT1 <- renderText({
    input$TEXT1
  })
}

shinyApp(UI, Server)
Run Code Online (Sandbox Code Playgroud)

ruc*_*n90 5

您可以尝试以下代码:

ui.R

library(shiny)

shinyUI(fluidPage(

  titlePanel("Reactivity"),

  sidebarLayout(
    sidebarPanel(
       textInput("caption", "Caption:", "Data Summary"),
       textInput("TEXT1", "tEXT:", "Data Summary"), 
       actionButton("goButton", "Go")
  ),

    mainPanel(
        h3(textOutput("caption", container = span)),
        h3(textOutput("TEXT1", container = span))
       )
     )
   )
 )
Run Code Online (Sandbox Code Playgroud)

server.R

shinyServer(function(input, output) {

   cap <- eventReactive(input$goButton, {
      input$caption
   })

   text <- eventReactive(input$goButton, {
      input$TEXT1
   })

   output$caption <- renderText({
      cap()
   })

   output$TEXT1 <- renderText({
      text()
   })

})
Run Code Online (Sandbox Code Playgroud)

  • 在 ui.R 中进行以下更改:`mainPanel(verbatimTextOutput("o1"))` 并在 server.R 中进行以下更改:`shinyServer(function(input, output) { inputs &lt;- eventReactive(input$goButton, { c(input$caption, input$TEXT1) }) output$o1 &lt;- renderPrint({ cat(inputs()[1], "\n", inputs()[2]) }) })` (2认同)