Immediate output here


          

Delayed output comes after the page is ready


          
show with app
function(input, output, session) {

  values <- reactiveValues(starting = TRUE)

  session$onFlushed(function() {
    values$starting <- FALSE
  })
  
  output$fast <- renderText({ "This happens right away" })
  output$slow <- renderText({
    if (values$starting) {
      invalidateLater(0, session)
      return("Please wait for 5 seconds")
    }
    Sys.sleep(5)  # pretend this is time-consuming
    "This happens later"
  })
  output$slow_plot <- renderPlot({
    if (values$starting) {
      invalidateLater(0, session)
      return(plot(cars, main = "Please wait for a while"))
    }
    plot(rnorm(100000), main = "A slow plot")
  })

}
basicPage(
  h2('Immediate output here'),
  verbatimTextOutput('fast'),
  h2('Delayed output comes after the page is ready'),
  verbatimTextOutput('slow'),
  plotOutput('slow_plot')
)