В моем приложении Shiny я хотел бы изменить tabItem, а затем отфильтровать таблицу данных (DT) по ключевому слову, щелкнув один раз на actionLink.
Я могу изменить tabItems, но не могу автоматически отфильтроватьDataatable на один клик actionLink.
Это процесс, который я пытаюсь кодировать:
(i) Установите флажокВход для отображения карты (ii) Нажмите на actionLink для изменения tabItem (iii) Найдите DT, используя ключевое слово для отображенияотфильтрованные строки (ключевое слово зависит от выбранного checkboxInput)
После перехода на вкладку «mc» я могу фильтровать по ключевому слову только путем снятия флажка и повторной проверки checkboxInput.
Буду признателен за любые советы о том, как заставить последние два шага, описанные выше, работать на одном клике actionLink.
На данный момент это мой подход:
dashboardSidebar(
sidebarMenu(
id="sidebar1",
tabItems(
tabItem(tabName = "gisd",
tags$div(id="meta",
fluidRow(
column(2,
actionLink("meta", "Meta")
tabItem(tabName = "mc",
server <- function(input, output, session) {
output$mytable = DT::renderDataTable({
mcat
})
observe({
if(input$meta == TRUE){
updateTabItems(session, inputId = "sidebar1", selected = "mc")
delay(500, if(input$pow_sl == TRUE){ # pow_sl this is ID of checkboxInput
mytable_proxy = DT::dataTableProxy('mytable')
keyw <- "plant"
updateSearch(mytable_proxy, keywords = list(global = keyw, columns = NULL))
} else {
mytable_proxy = DT::dataTableProxy('mytable')
updateSearch(mytable_proxy, keywords = list(global = "", columns = NULL))
})
}
})
}