我有以下代码来插入有效的标签页:
library(shiny)
ui <- fluidPage(
navbarPage("My Page",
tabPanel("a", p("page a")),
tabPanel("b", p("page b")),
id='my_page')
)
server <- function(input, output, session){
v = reactiveVal(2)
observeEvent(v(),{
if(v() > 1){
cat("I did observe v with value", v(), "\n")
insertTab(inputId="my_page",
tab=tabPanel("c", p("page c")),
target="a", position="after")
}
})
}
shinyApp(ui, server)
但是,使用下面显示的renderUI和tagList对此进行小的修改无法插入标签。
library(shiny)
ui <- fluidPage(
uiOutput("page")
)
server <- function(input, output, session){
output$page <- renderUI(tagList(navbarPage("My Page",
tabPanel("a", p("page a")),
tabPanel("b", p("page b")),
id='my_page')))
v = reactiveVal(2)
observeEvent(v(),{
if(v() > 1){
cat("I did observe v with value", v(), "\n")
insertTab(inputId="my_page",
tab=tabPanel("c", p("page c")),
target="a", position="after")
}
})
}
shinyApp(ui, server)
可能是什么原因?请指教。谢谢。