Description Details Components Changes Note See Also Examples
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.
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.
bsCollapseA container for holder the individual panels created by bsCollapsePanel.
bsCollapsePanelCreates an individual Collapse Panel that resides within a bsCollapse.
updateCollapseUsed within your server logic to open/close collapse panels or change their style.
style is a new option that wasn't available in previous versions of
shinyBS.
Run bsExample("Collapses") for an example
of Collapses functionality.
Other Collapses: bsCollapsePanel;
bsCollapse; updateCollapse
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | 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)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.