выделите активный пункт меню в боковой панели Shinydashboard - PullRequest
0 голосов
/ 22 января 2020

Мой вопрос точно такой же, как и Максим, заданный в r studio community .
У меня возникла похожая проблема с моей работой.
Так как в этом сообществе не было ответа, я отвечу на вопрос Максима здесь.

Привет, пользователи R,

У меня много скрытых пунктов меню, когда я запускаю свое блестящее приложение. Некоторые из них будут отображаться при нажатии некоторых кнопок и выполнении некоторых других условий.

Все работает так, как ожидалось, но мне бы хотелось, чтобы активный menuItem был выделен на боковой панели. Это имеет место с домашней страницей, которая никогда не скрывается, но со всеми скрытыми (из блестящего js пакета) пунктами меню, когда я их показываю, пункт меню не выделяется, когда он активен.

У всех есть относительно простое решение для этого?

Пример того, как могут выглядеть коды боковой панели:

в пользовательском интерфейсе для боковой панели:

sidebarMenu(id = "tabs",
shinyjs::useShinyjs(), 
menuItem("Product Selection", tabName = "product_selection", icon = icon("dashboard")),
shinyjs::hidden(
        div(id="Test", 
            menuItem("Test", tabName = "Test", icon = icon("chart-line")))) 
) 

на сервере для действия на боковой панели:

observeEvent(input$look, {ID = someID shinyjs::show(id= ID,anim = TRUE) 
updateTabItems(session, "tabs", ID) }) 

Хорошего дня,

Максим

...