2017-02-24 26 views
0

是否可以根据反应对象呈现仪表板标题下拉菜单或通知项目?我的尝试没有奏效。shinydashboard中的下拉菜单中的被动对象

library(shiny) 
library(shinydashboard) 
ui <- dashboardPage(
    dashboardHeader(uiOutput("drop")), 
    dashboardSidebar(), 
    dashboardBody() 
) 

server <- function(input, output) { 
    values<-reactiveValues() 
    values[["numvotes"]]<-1 
    output$drop<-renderUI({ 
    dropdownMenu(type = "notifications", badgeStatus = "warning", 
       notificationItem(icon = icon("ok", lib = "glyphicon"), status = "danger", 
            paste(values[["numvotes"]],"vote(s)") 
       )    ) 
    }) 
    } 

shinyApp(ui, server) 

回答

1

是的,这是在文档中解释了shinydashboardrenderMenudropdownMenuOutput

https://rstudio.github.io/shinydashboard/structure.html#dynamic-content

library(shiny) 
library(shinydashboard) 
ui <- dashboardPage(
    dashboardHeader(dropdownMenuOutput("notif")), 
    dashboardSidebar(), 
    dashboardBody() 
) 

server <- function(input, output) { 
    values<-reactiveValues() 
    values[["numvotes"]] <- 1 

    output$notif <- renderMenu({ 
    dropdownMenu(type = "notifications", badgeStatus = "warning", 
        notificationItem(icon = icon("ok", lib = "glyphicon"), status = "danger", 
            paste(values[["numvotes"]], "vote(s)") 
       )    ) 
    }) 
} 

shinyApp(ui, server)