2016-11-18 43 views
2

中给出'真'我用this example为闪亮的应用程序获取动态用户界面。我现在试图找到侧栏面板。但是当我这样做时,我会在侧边栏中看到一个丑陋的“真实”。 enter image description here任何人都知道如何在没有将sourceme.r文本放入应用程序的情况下摆脱TRUE。也许source是不是应该使用的功能?采购动态用户界面在闪亮的

require(shiny) 
require(shinydashboard) 


mainbody <- div(tabItems(
    tabItem(tabName = "t_item1", class = "active", box(title = "Item 1 information")), 
    tabItem(tabName = "t_item2", box(title = "Item 2 information")), 
    tabItem(tabName = "t_item3", box(title = "Item 3 information")) 
) 
) 

header <- dashboardHeader(title = "dashboard header") 

sidebar <- dashboardSidebar(uiOutput("sidebarpanel")) 

body <- dashboardBody(uiOutput("body")) 

ui <- dashboardPage(header, sidebar, body) 

server <- function(input, output, session) { 

    output$sidebarpanel <- renderUI({ 
    # if (USER$Logged == TRUE) { 

    # div(
     source('~/sourceme.r') 
    #  sidebarMenu(
    #  menuItem("Item 1", tabName = "t_item1", icon = icon("line-chart")), 
    #  menuItem("Item 2", tabName = "t_item2", icon = icon("users")), 
    #  menuItem("item 3", tabName = "t_item3", icon = icon("dollar")) 
    # ) 
     #) 
    }) 
    output$body <- renderUI({ 

     mainbody 
    }) 
} 

shinyApp(ui, server) 

sourceme.r:

sidebarMenu(
    menuItem("Item 1", tabName = "t_item1", icon = icon("line-chart"), selected = TRUE), 
    menuItem("Item 2", tabName = "t_item2", icon = icon("users")), 
    menuItem("item 3", tabName = "t_item3", icon = icon("dollar")) 
) 

回答

3

使sourceme.r一个功能返回sidebarMenu内容。然后将source呼叫置于server函数之外,并调用server函数中的新函数返回sidebarMenu

+0

谢谢,已经知道了我自己,但显然会接受它。 –