【发布时间】:2018-10-08 16:01:39
【问题描述】:
我发现如果有多个(多个)tabItem,menuSubItem 内容不会呈现。
演示此行为的最小示例如下。
所需的行为是在启动时显示标记为selected = TRUE 的tabItem 的内容。现在,只有在侧边栏中的 menuSubItems 之间切换后才会显示内容。
我怎样才能让它工作?
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(title = "MINIMAL EXAMPLE"),
dashboardSidebar(
sidebarMenuOutput("menu")
),
dashboardBody(
uiOutput("body")
)
)
server <- function(input, output, session) {
output$menu <- renderMenu(
sidebarMenu(
menuItem(text = "TABS", tabName = "TABS", startExpanded = T,
menuSubItem(text = "tab1", tabName="tab1",
icon = icon("cube"), selected = TRUE),
menuSubItem(text = "tab2", tabName="tab2",
icon = icon("cube"), selected = FALSE)
)
)
)
output$body <- renderUI({
tabItems(
tabItem(tabName = "tab1",
h4("MY TEXT 1")
),
tabItem(tabName = "tab2",
h4("MY TEXT 2")
))
})
}
shinyApp(ui = ui, server = server)
【问题讨论】:
-
有趣的是,只有将
tabItems放在uiOutput中才会发生这种行为,如果将它们直接放入 UI,一切都会按预期工作
标签: r shiny shinydashboard