In a Shiny document, evaluate the given expression after the document has finished rendering, instead of during render.

render_delayed(expr)

Arguments

expr

The expression to evaluate.

Value

An object representing the expression.

Details

This function is useful inside Shiny documents. It delays the evaluation of its argument until the document has finished its initial render, so that the document can be viewed before the calculation is finished.

Any expression that returns HTML can be wrapped in render_delayed.

Note

expr is evaluated in a copy of the environment in which the render_delayed call appears. Consequently, no side effects created by expr are visible in succeeding expressions, nor are changes to the environment after the call to render_delayed visible to expr.

expr must be an expression that produces HTML.

Examples

if (FALSE) { # \dontrun{
# Add the following code to an R Markdown document

div(Sys.time())

render_delayed({
 Sys.sleep(3)      # simulate an expensive computation
 div(Sys.time())
})

div(Sys.time())
} # }