【发布时间】:2020-02-25 05:57:11
【问题描述】:
尝试使用 Shiny dashboardplus 半折叠侧边栏,但遇到了一些问题,希望得到您的建议。
可重现的脚本:
library("shiny")
library("htmltools")
library("shinydashboard")
library("shinydashboardPlus")
library("bootstrap")
library("shinyjs")
# UI Page Starts
ui = dashboardPagePlus(
title = "Shiny App",
dashboardHeader(
title = "Title with A Few Other Things",
titleWidth = 530
),
dashboardSidebar(
fluidRow(
useShinyjs(),
column(8, align = "left", offset = 0,
style='padding-left: 28px; padding-top: 10px',
h4(HTML(paste0("Project Lists")))),
column(2, align = "left", offset = 0,
style='padding-top: 5px',
actionButton("toggleSidebar", icon("th"), style = "padding-top: 12px;")
)
),
# Remove the sidebar toggle element
tags$script(JS("document.getElementsByClassName('sidebar-toggle')[0].style.visibility = 'hidden';")),
fluidRow(
h4(HTML(paste0("Contents that are not supposed to show when collapsed.")))
)
),
dashboardBody()
)
#Server
server = function(input, output, session) {
#side bar
observeEvent(input$toggleSidebar, {
shinyjs::toggleClass(selector = "body", class = "sidebar-collapse")
})
}
#
shinyApp(ui = ui, server = server)
在此示例中,我删除了默认的dashboardplus 切换侧边栏按钮,并在侧边栏右上角添加了一个新按钮。 (注意,即使我使用默认的,它最终也是同样的问题) 当单击折叠侧边栏时,侧边栏本身按预期半折叠。但是,我也想
- 半折叠时删除侧边栏中的项目。
- 将“项目列表”垂直添加到半折叠侧边栏。
- 保持标题不变,不要折叠
下面我首先展示它现在是什么以及我想要它成为什么。非常感谢您的帮助!
【问题讨论】:
标签: javascript css r shiny shinydashboard