[英]Shiny Reactive materialSwitch dplyr filter
我正在嘗試使用shinyWidgets
的materialSwitch
來控制 dplyr 過濾器,該過濾器使用grepl
捕獲特定列中的文本。
目前我的代碼如下所示:
pickerInput(
inputId = "status",
label = "Status:",
choices = sort(unique(df$STATUS)),
selected = unique(df$STATUS))
materialSwitch(
inputId = "switch",
label = "TEXT",
value = FALSE,
status = "primary"
)
filtered_data <-
reactive ({
req(input$status,
input$switch)
ready_for_reg %>%
filter(STATUS %in% input$status) %>%
filter(if(input$switch == TRUE) grepl("TEST",COL1) else TRUE )
})
DT::renderDataTable(datatable(filtered_data())
單擊開關並將其設置為 TRUE 時,此代碼有效。 但是,當它處於默認狀態 FALSE 時,表格根本不會顯示。 如何確保filtered_date()
變量在未單擊按鈕時顯示所有數據?
req(FALSE)
停止事件,因此當開關為 FALSE 時req(input$status,input$switch)
停止事件。
這就是為什么你沒有結果。
要修復它,請更改為req(input$status)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.