Observer và reactive

Xây dựng ứng dụng web với Shiny trong R

Ramnath Vaidyanathan

VP of Product Research

Luồng phản ứng

Sơ đồ hiển thị luồng phản ứng trong một ứng dụng Shiny

Xây dựng ứng dụng web với Shiny trong R

Observer (1/2)

Một ứng dụng cho phép nhập tên và trả về lời chào cá nhân trong hộp thoại modal

Xây dựng ứng dụng web với Shiny trong R

Observer (2/2)

ui <- fluidPage(
  textInput('name', 'Enter your name')
)

server <- function(input, output, session){
  observe({
    showNotification(
      paste("You entered the name", input$name)
    )
  })
}
Xây dựng ứng dụng web với Shiny trong R

Observer vs. reactive

Vai trò

  • reactive() dùng để tính giá trị, không có tác dụng phụ.
  • observe() dùng để thực hiện hành động, có tác dụng phụ.

Khác biệt

  • Giá trị trả về: Biểu thức reactive trả về giá trị; observer thì không.
  • Đánh giá: Observer phản hồi ngay khi phụ thuộc thay đổi; biểu thức reactive đánh giá lười.
  • Tác dụng phụ: Observer hữu ích nhờ tác dụng phụ; biểu thức reactive KHÔNG được có tác dụng phụ.
Xây dựng ứng dụng web với Shiny trong R

Hãy thực hành!

Xây dựng ứng dụng web với Shiny trong R

Preparing Video For Download...