从服务器端禁用/启用侧边栏 [英] disabling/enabling sidebar from server side

查看:14
本文介绍了从服务器端禁用/启用侧边栏的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法从服务器端手动禁用/启用闪亮仪表板应用上的侧边栏?

我希望在需要更多空间时自动隐藏侧边栏,而不使用页眉上的切换按钮。

谢谢

推荐答案

我对仪表板不是很熟悉,因为我从来没有构建过仪表板,但是快速查看一下,似乎当单击打开/隐藏侧边栏按钮时,所有发生的事情都是sidebar-collapse类被添加/删除到<body>标记中。也许会有更多我不知道的事情发生,但这似乎是最明显的事情。

这样您就可以轻松地使用shinyjs包(免责声明:我是作者)添加/删除该类

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

shinyApp(
  ui = 
    dashboardPage(
      dashboardHeader(),
      dashboardSidebar(),
      dashboardBody(
        shinyjs::useShinyjs(),
        actionButton("showSidebar", "Show sidebar"),
        actionButton("hideSidebar", "Hide sidebar")
      )
    ),
  server = function(input, output, session) {
    observeEvent(input$showSidebar, {
      shinyjs::removeClass(selector = "body", class = "sidebar-collapse")
    })
    observeEvent(input$hideSidebar, {
      shinyjs::addClass(selector = "body", class = "sidebar-collapse")
    })
  }
)

这篇关于从服务器端禁用/启用侧边栏的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆