对于Ui.R中的循环(lapply)navbarPage

时间:2016-01-18 02:38:37

标签: r shiny-server shiny

我重复使用tabPanel循环重复for

问题是很可能错误地放置了for循环。创建无子菜单的结果显示随机文本显示“tab-1810-1”

ui.R

library(shiny)
shinyUI(navbarPage("Nav Bar Title", 
  navbarMenu("Nav Bar Sub-title",
    lapply(1:2, function(v) {
      tabPanel(criteria[v],
        fluidRow(
        )
      ) 
    })
  ) 
))

子菜单的插图:

1 个答案:

答案 0 :(得分:0)

在这种情况下,您需要使用do.call将所有标签传递给navbarMenu

library(shiny)
criteria <- c("test1","test2")
tabs <- lapply(1:2, function(v) {
  tabPanel(criteria[v],
           fluidRow(
           )
  ) 
})

ui <-shinyUI(navbarPage("Nav Bar Title", 
                   do.call(navbarMenu,c("title",tabs))
                   ) 
)

server <- function(input, output) {}
shinyApp(ui,server)