首页 > 解决方案 > 闪亮的 selectInput 从下拉列表中选择所有

问题描述

我有这样的selectInput下拉菜单:

selectInput("locInput", "Location", choices=c("All","New Mexico", "Colorado", "California"))

我想要实现的是默认情况下使 selectInput 不过滤任何内容,就像选择“All”时一样,它应该列出所有观察结果(所以来自加利福尼亚、科罗拉多等)所以我试图做的是创建简单的逻辑这:

server <- function(input, output) {
  filtered<-reactive({
    shows %>%
    filter(Length >= input$lenInput[1],
           Length <= input$lenInput[2],
           if (input$locInput != "All"){
           Location==input$locInput
    })

但这似乎不起作用。任何想法我可以改变什么以使其正常工作?

标签: rshinydplyr

解决方案


有很棒的shinyWidgets包,它已经具有它的Select All功能pickerInput

library(shiny)
library(shinyWidgets)

ui <- basicPage(
  sidebarPanel(
    pickerInput("locInput","Location", choices=c("New Mexico", "Colorado", "California"), options = list(`actions-box` = TRUE),multiple = T)
  )
)

server <- function(input, output) {

  observe({
    print(input$locInput)
  })

}

shinyApp (ui = ui, server = server)

在此处输入图像描述


推荐阅读