如何使用menuSubItem部署R shinydashboard默认情况下不折叠

时间:2016-07-14 21:08:09

标签: r shiny shinydashboard

以下是shinydashboard的一些简单示例代码,subMenuItem下有各种menuItem个对象。默认情况下,部署应用程序时,subMenuItem会折叠。有没有办法设置它,以便它们不会崩溃?

ui <- dashboardPage(
  dashboardHeader(title='Head'),
  dashboardSidebar(
    sidebarMenu(
      menuItem('Tabs', tabName='tabs',
        menuSubItem('Tab 1', tabName='tab1'),
        menuSubItem('Tab 2', tabName='tab2'),
        menuSubItem('Tab 3', tabName='tab3')
      )
    )
  ),
  dashboardBody(
    tabItems(
      tabItem(tabName='tab1',
        h1("Tab 1")
      ),
      tabItem(tabName='tab2',
        h1("Tab 2")
      ),
      tabItem(tabName='tab3',
        h1("Tab 3")      
      )
    )
  )
)

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

shinyApp(ui, server)

2 个答案:

答案 0 :(得分:6)

您可以使用Javascript更改菜单元素的默认显示样式(默认情况下,它们是display:none,需要更改为display:block)。在menuItem()之后添加以下行(还记得添加逗号)

  tags$head(tags$script(HTML('$(document).ready(function() {$(".treeview-menu").css("display", "block");})')))

答案 1 :(得分:1)

自操作以来可能已添加的功能:startExpanded。将= TRUE设置为带有您要默认扩展的子项的任何菜单项。

  dashboardSidebar(
    sidebarMenu(
      menuItem('Tabs', tabName='tabs', startExpanded = TRUE,
        menuSubItem('Tab 1', tabName='tab1'),
        menuSubItem('Tab 2', tabName='tab2'),
        menuSubItem('Tab 3', tabName='tab3')
      )
    )
  ),