Passing values with reactive variables

Reactive values are a means of passing data from R to the UI and vice versa.

If you are familiar with shiny, then reactive values in this package work in a similar way to shiny::reactiveVal objects.

library(tickle)

val <- reactive_dbl(1.0)

# To fetch the actual value, call with no argument
val()
#> [1] 1

# Give an argument to set the value
val(1.23)
val()
#> [1] 1.23
button_text <- reactive_chr("Hi!")
ui_spec <- tic_window(
  tic_button(text = "Hello"), # Plain old boring string
  tic_button(textvariable = button_text) # reactive value
)

win <- render_ui(ui_spec)

# Now change the reactive variable, and the button text changes
button_text("Goodbye now!")