2 formats:
Update***Input() + ObserveEvent()renderUI() + uiOutput()Update***Input()Tous les types d’inputs peuvent être mis à jours:
updateDateInput()updateNumericInput()updateSliderInput()updateSelectInput()Update***Input()Tous les types d’inputs peuvent être mis à jours:
updateDateInput()
updateNumericInput()
updateSliderInput()
updateSelectInput()
Update***Input()Tous les types d’inputs peuvent être mis à jours:
updateDateInput()
updateNumericInput()
updateSliderInput()
updateSelectInput()
Update***Input()Les paramètres :
update***Input( session, id, ...)
Utilisation :
observeEvent(input$***,{update***Input(session, id, ... )})ui <- fluidPage(
selectInput('group', 'Groupe', df_fruits$food_group),
selectInput('subgroup', 'Sous-Groupe', df_fruits$food_subgroup )
)
server <- function(input, output, session){
observeEvent(input$group,
{
sub_df <-df_fruits %>%
filter(food_group== input$group) %>%
select(food_subgroup)
updateSelectInput(session, 'subgroup',
'Sous-Groupe', sub_df$food_subgroup )}
)
}
shinyApp(ui, server)df_fruit en ligne selectInput se basant sur name subgroup renderUI() + uiOutput()renderUI() pour la partie ServeruiOutput() pour la partie UIui <- fluidPage(
selectInput("type", "type", c("slider", "numeric")),
uiOutput("numeric")
)
server <- function(input, output, session){
output$numeric <- renderUI({
if (input$type == "slider") {
sliderInput("dynamic", input$label,
value = 0, min = 0, max = 10)
} else {
numericInput("dynamic", input$label,
value = 0, min = 0, max = 10)
}
})
}renderUI et uiOutput pour créer les inputsupdate***Input(): Mettre à jour un input déjà existant, fonctionne bien avec observeEvent() renderUI(): Créer un input depuis le server et l’afficher dans l’UI uiOuput()