在shinydashboard中默认隐藏侧边栏

时间:2016-02-03 06:33:03

标签: r shiny shinydashboard

我使用shinydashboard来创建我的应用。我想在桌面环境(例如Windows)上默认隐藏sidear,但不禁用它。在移动设备上,边栏默认为隐藏。我想我需要改变css类,但不知道该怎么做。

感谢您的任何建议。

这是我的游戏代码:

library(shiny)

library(shinydashboard)
ui <- shinyUI(dashboardPage(
    dashboardHeader(),
    dashboardSidebar(),
    dashboardBody()
))

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

shinyApp(ui = ui, server = server)

4 个答案:

答案 0 :(得分:16)

如果您执行?dashboardSidebar,您可能会看到使用情况,例如

  

dashboardSidebar(...,disable = FALSE,width = NULL,collapsed =   FALSE)

所以这应该有用

sidebar <- dashboardSidebar(
  collapsed = TRUE,
  sidebarMenu()
)

我不确定这是否取决于您的shinydashboard版本,但您也可以检查/更改它。

答案 1 :(得分:14)

这与我在另一个SO帖子中的答案非常相似:"disabling/enabling sidebar from server side"

这里的代码可以通过在应用启动时隐藏侧边栏来执行您想要的操作(使用包shinyjs)

library(shiny)
library(shinydashboard)
library(shinyjs)

ui <- shinyUI(dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    useShinyjs()
  )
))

server <- shinyServer(function(input, output, session) {
  addClass(selector = "body", class = "sidebar-collapse")
})

shinyApp(ui = ui, server = server)

答案 2 :(得分:1)

添加

dashboardSidebar(collapsed = TRUE)

代替

仪表板侧边栏()

在 UI 页面中。

答案 3 :(得分:0)

或者干脆

ui <- shinyUI(dashboardPage(
  dashboardHeader(),
  dashboardSidebar(collapsed = TRUE),
  dashboardBody()
))