Collapses: Collapses

CollapsesR Documentation

Collapses

Description

Collapse panels allow you to reduce clutter in your Shiny app by making panels of information that open and close with a user's click. Any type of content can go in a collapse panel. Standard Bootstrap styling options are available.

Details

Collapses are designed to mimic tabsetPanel in their implementation. Start with bsCollapse to create a panel group, then fill it with panels using bsCollapsePanel.

bsCollapse acts as an input, so you can retrieve which panels are open from the input object passed to the function in shinyServer.

updateCollapse can be used within your server logic to open/close collapse panels or to change their style.

Components

bsCollapse

A container for holder the individual panels created by bsCollapsePanel.

bsCollapsePanel

Creates an individual Collapse Panel that resides within a bsCollapse.

updateCollapse

Used within your server logic to open/close collapse panels or change their style.

Changes

style is a new option that wasn't available in previous versions of shinyBS.

Note

Run bsExample("Collapses") for an example of Collapses functionality.

See Also

Twitter Bootstrap 3

Other Collapses: bsCollapsePanel; bsCollapse; updateCollapse

Examples

library(shiny)
library(shinyBS)

app = shinyApp(
 ui =
 fluidPage(
   sidebarLayout(
     sidebarPanel(HTML("This button will open Panel 1 using <code>updateCollapse</code>."),
                  actionButton("p1Button", "Push Me!"),
                  selectInput("styleSelect", "Select style for Panel 1",
                   c("default", "primary", "danger", "warning", "info", "success"))
     ),
     mainPanel(
       bsCollapse(id = "collapseExample", open = "Panel 2",
                  bsCollapsePanel("Panel 1", "This is a panel with just text ",
                   "and has the default style. You can change the style in ",
                   "the sidebar.", style = "info"),
                  bsCollapsePanel("Panel 2", "This panel has a generic plot. ",
                   "and a 'success' style.", plotOutput("genericPlot"), style = "success")
       )
     )
   )
 ),
 server =
 function(input, output, session) {
   output$genericPlot <- renderPlot(plot(rnorm(100)))
   observeEvent(input$p1Button, ({
     updateCollapse(session, "collapseExample", open = "Panel 1")
   }))
   observeEvent(input$styleSelect, ({
     updateCollapse(session, "collapseExample", style = list("Panel 1" = input$styleSelect))
   }))
 }
)
## Not run: 
 runApp(app)

## End(Not run)

shinyBS documentation built on April 18, 2022, 1:06 a.m.

Related to Collapses in shinyBS...