如何根据使用shinyWidgets在pickerInput中键入字母来获得搜索选项?

man*_*niA 5 r shiny

我使用Shiny 包中的pickerInput函数shinyWidgets来创建下拉菜单。例如我的一部分ui.R

library(shiny)
library(data.table)
library(shinyWidgets)

.
.
#Rating
        pickerInput(
          inputId = "rate",
          label = "Rating:",
          choices = c(as.character(unique(datT2[order(rat.ord)]$Rating))),     
          selected = sort(unique(as.character(datT2$Rating ))),   
          options = list(`actions-box` = TRUE, 
                         `selected-text-format` = paste0("count > ", length(unique(as.character(datT2$Rating  )))-1) ,
                         `count-selected-text` = "Alle",liveSearch = TRUE, 
                         liveSearchPlaceholder= TRUE),   
          multiple = T
        )
Run Code Online (Sandbox Code Playgroud)

在此功能之前,我只应用了正常功能:

#Rating
  selectInput("rate",
                "Rating:",
                choices = c("Alle",
                            sort(unique(as.character(datT2$Rating )))),     
 selected = "Alle", 
 multiple = TRUE)
Run Code Online (Sandbox Code Playgroud)

selectInput功能中可以根据输入进行搜索,但不能像 in 一样通过单击取消选择所选项目 pickerInput

我怎样才能有基于输入字母的搜索选项 pickerInput

Wil*_*ren 10

答案有点晚,但您的选项命名是错误的。改变liveSearchlive-search,它会工作。

options = list(`live-search`=TRUE)
Run Code Online (Sandbox Code Playgroud)

编辑

如果有,shinyWidgets >= 4.4您还可以使用该功能pickerOptions来设置选项。您可以通过调用?pickerOptions或检查此网址来检查所有可能的选项

两种方法的示例:

library(shiny)
library(shinyWidgets)

ui <- fluidPage(
  pickerInput('picker 1', 'picker1', c(1,2,3,4,5), options=pickerOptions(liveSearch=T)),
  pickerInput('picker 2', 'picker2', c(1,2,3,4,5), options = list(`live-search`=TRUE))
)

server <- function(input, output, session) {}

shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)