Есть ли способ одновременно открыть содержимое MenuItem, одновременно расширяя раскрывающийся список элемента подменю? - PullRequest
0 голосов
/ 03 февраля 2020

Мой вопрос касается menuItem и menuSubItem.

На данный момент, щелкнув MenuItem, открывается раскрывающееся меню с раскрытием соответствующего SubMenuItem. Затем, щелкнув SubMenuItem, вы получите доступ к его содержимому.

Мне интересно, можно ли одновременно щелкнуть по MenuItem и:

Открыть его раскрывающийся список, открывая различные SubMenuItem (это case now)

И, кроме того, прямо к его конкретному содержанию c.

По сути, я бы хотел, чтобы у каждого из моих MenuItem была своего рода "Домашняя страница", на которой вы находитесь сразу Направлено на то, когда вы щелкнете по нему (вместе с обычным наличием выпадающего меню).

Для меня эта функция «Домашняя страница» существует только с MenuItems, которые не имеют SubMenuItem. Как только SubMenuItem добавлен, щелчок MenuItem приводит только к раскрывающемуся меню.

Ниже приведен пример кода. Я хотел бы иметь возможность доступа к «Домашним страницам» для обоих MenuItems (1 и 2), а также для доступа к раскрывающемуся меню для MenuItem 2. На данный момент нажатие MenuItem 2 не приводит меня к его домашней странице:

library(shinydashboard)

# Define UI for application
ui <- dashboardPage(
  dashboardHeader(title = "Shiny Dashboard"),

  dashboardSidebar(
    sidebarMenu(
      menuItem("Menu Item 1", tabName = "menu_1"),
      menuItem("Menu Item 2", tabName = "menu_2",
               menuSubItem("Sub Menu Item 1", tabName = "sub_1"), 
               menuSubItem("Sub Menu Item 2", tabName = "sub_2")
               )
      )
    ),

  dashboardBody(
    tabItems(
      tabItem(tabName = "menu_1", 
              fluidRow(
                h1("Homepage 1")
                )
              ),
      tabItem(tabName = "menu_2", 
              fluidRow(
                h1("Homepage 2")
                )
              ),
      tabItem(tabName = "sub_1", 
              fluidRow(
                h1("Sub Menu Page 1")
                )
              ), 
      tabItem(tabName = "sub_2", 
              fluidRow(
               h1("Sub Menu Page 2")
               )
              )
      )
    )
  )

# Define server logic
server <- function(input, output) {

  }

# Run the application 
shinyApp(ui = ui, server = server)
...