web-dev-qa-db-ja.com

shinydashboardのデフォルトでサイドバーを非表示

shinydashboardを使用してアプリを作成しました。デスクトップ環境(Windowsなど)のデフォルトでサイドダーを非表示にしたいのですが、無効にしたくありません。モバイルデバイスでは、サイドバーはデフォルトで非表示になっています。 cssクラスを変更する必要があると思いますが、その方法がわかりません。

提案をありがとう。

これは私のプレイコードです:

library(shiny)

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

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

shinyApp(ui = ui, server = server)
9
Bangyou

これは、別のSOスレッド: "サーバー側からのサイドバーの無効化/有効化" からの私の回答と非常によく似ています。

アプリの起動時にサイドバーを非表示にすることで、必要なことを実行できるコードを次に示します(パッケージ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)
16
DeanAttali

?dashboardSidebarを実行すると、おそらく次のような使用法が表示されます。

dashboardSidebar(...、無効= FALSE、幅= NULL、折りたたみ= FALSE)

だからこれはうまくいくはずです

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

これがshinydashboardのバージョンに依存するかどうかはわかりませんが、確認/変更することもできます。

17
Willem Bressers