反應

可以使用反應來使輸出依賴於另一個表示式。在下面的示例中,輸出$ text 元素依賴於 text_reactive,而 text_reactive 又依賴於 input $ user_text。每當輸入$ user_text 發生更改時,輸出$ text 元素和 text_reactive 都會**失效。**它們是根據 input $ user_text 的新值重新計算的。

library(shiny)

ui <- fluidPage(
  headerPanel("Example reactive"),
  
  mainPanel(
    
    # input field
    textInput("user_text", label = "Enter some text:", placeholder = "Please enter some text."),
    
    # display text output
    textOutput("text"))
)

server <- function(input, output) {
  
  # reactive expression
  text_reactive <- reactive({
    input$user_text
  })
  
  # text output
  output$text <- renderText({
    text_reactive()
  })
}

shinyApp(ui = ui, server = server)