【发布时间】:2016-09-21 16:50:06
【问题描述】:
我正在使用 Shiny,我正在尝试根据一组参数动态显示一组 tabPanels。在下面的代码中,我想让第一个 tabPanel 仅在 showTab1 <- T 等时出现。
我尝试了简单的 if 语句和 conditionalPanels,但它失败了。下面是代码示例:
rm(list = ls())
library(shiny)
library(shinydashboard)
showTab1 <- T
showTab2 <- F
showTab3 <- T
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(
),
dashboardBody(
uiOutput("tabs")
)
)
server <- function(input, output) {
output$tabs <- renderUI({
tabBox(width = 1000,height = 500,
if (showTab1 == T) { tabPanel("tab1") },
if (showTab2 == T) { tabPanel("tab2") },
if (showTab3 == T) { tabPanel("tab3") }
)
})
}
shinyApp(ui, server)
感谢您的帮助。
干杯, 科斯塔斯
【问题讨论】:
-
感谢您的建议。可以看看下面的答案吗?