Convenience helper for extracting a multi-select widget's value and style
from Shiny's input object without using modules.
Usage
glassMultiSelectValue(
input,
inputId,
choices = NULL,
empty_behavior = c("none", "all", "null")
)Arguments
- input
Shiny
inputobject.- inputId
Input id used in
glassMultiSelect().- choices
Optional choices used to resolve an empty selection when
empty_behavior = "all". This may be a static choice object or a zero-argument reactive/function that returns choices.- empty_behavior
Meaning of an empty selection for
resolved:"none"keepscharacter(0),"all"returns every choice value, and"null"returnsNULL. The rawselectedreactive is never changed.
Value
A named list with four reactives:
selectedReactive character vector of selected values
resolvedReactive value after applying empty behavior
is_emptyReactive logical indicating an empty selection
styleReactive string for the active style
See also
Other glass select widgets:
glassMultiSelect(),
glassMultiSelectServer(),
glassSelect(),
glassSelectServer(),
glassSelectValue(),
updateGlassMultiSelect(),
updateGlassSelect()
Examples
if (interactive()) {
library(shiny)
ui <- fluidPage(
useGlassTabs(),
glassMultiSelect("cats", c(A = "a", B = "b", C = "c"))
)
server <- function(input, output, session) {
ms <- glassMultiSelectValue(input, "cats")
observe({
message("Selected: ", paste(ms$selected(), collapse = ", "))
message("Style: ", ms$style())
})
}
shinyApp(ui, server)
}