R Shiny - Utilisation d'une case à cocher 'Tout/Aucun' dans un contexte uiOutput
Bonjour à tous,
Voici mon contexte :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| library(shiny)
###########################
# Liste des statut de Recrutement
liste_statut <- c("A","B","C")
ui <- shinyUI(fluidPage(uiOutput("testUI")))
server <- function(input, output, session) {
output$testUI <- renderUI({
navbarPage(
title = "Test",
tabPanel(icon = icon("users"), 'Test',
sidebarPanel(
# Statut
checkboxGroupInput("statut", "Statut", liste_statut, liste_statut),
checkboxInput('selectall_statut', 'Tout / Aucun', T))))
})
# observe({
# updateCheckboxGroupInput(
# session, 'statut', choices = liste_statut,
# selected = if (input$selectall_statut) liste_statut
# )
# })
}
shinyApp(ui = ui, server = server) |
J'aimerais pouvoir faire appel a ma case à cocher "Tout/Aucun", mais il ne réagit pas car il est mal défini/mal placé (voir emplacement en commentaire dans le code du dessus), j'ai pour message d'erreur :
Code:
Warning: Error in if: argument is of length zero
Je passe volontairement par un renderUI dans le serveur au lieu de la forme classique (définition de l'esthétique dans le UI, appel aux outputs dans le server) car de nombreux traitements seront faits par la suite du développement de mon application (notamment par un module de gestion d'authentification, et donc mettre un affichage conditionnel par utilisateur).
J'aimerais savoir comment le redéfinir pour qu'il puisse réagir (le code marche dans la "forme classique", et j'avoue ne pas encore tout saisir dans l'appel renderUI / uiOutput).
D'avance merci,
Antoine