gpt4 book ai didi

r - 如何在 Shiny 的应用程序中折叠sidebarPanel?

转载 作者:行者123 更新时间:2023-12-04 17:31:43 25 4
gpt4 key购买 nike

我有一个 Shiny 的应用程序,在导航栏页面的 tabPanel 内有一个 mainPanel 和一个 sidebarPanel。我需要一个选项来隐藏与此类似的 sidebarPanel: Hide sidebar in default in shinydashboardhttps://github.com/daattali/shinyjs/issues/43

actionButton 应该控制 sidebarPanel 是显示还是折叠。

这是代码:

library(shiny)
library(shinyjs)

ui <- fluidPage(
navbarPage("",
tabPanel("tab",
sidebarPanel(
useShinyjs()
),

mainPanel(actionButton("showSidebar", "Show sidebar"),
actionButton("hideSidebar", "Hide sidebar")
)
)
)
)

server <-function(input, output, session) {
observeEvent(input$showSidebar, {
shinyjs::removeClass(selector = "body", class = "sidebarPanel-collapse")
})
observeEvent(input$hideSidebar, {
shinyjs::addClass(selector = "body", class = "sidebarPanel-collapse")
})
}

shinyApp(ui, server)

希望有人能帮忙:)

最佳答案

我已修改您的代码以隐藏和显示侧边栏。要为 id 创建 sidebarPanel ,我将它包含在 div 中并给它 id = Sidebar 。为了显示和隐藏侧栏,我使用了 shinyjs 函数 showhide ,id 为 Sidebar

library(shiny)
library(shinyjs)

ui <- fluidPage(
useShinyjs(),
navbarPage("",
tabPanel("tab",
div( id ="Sidebar",sidebarPanel(
)),


mainPanel(actionButton("showSidebar", "Show sidebar"),
actionButton("hideSidebar", "Hide sidebar")
)
)
)
)

server <-function(input, output, session) {
observeEvent(input$showSidebar, {
shinyjs::show(id = "Sidebar")
})
observeEvent(input$hideSidebar, {
shinyjs::hide(id = "Sidebar")
})
}

shinyApp(ui, server)

希望能帮助到你!

关于r - 如何在 Shiny 的应用程序中折叠sidebarPanel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42159804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com