У меня внизу есть блестящая панель инструментов, и я хотел бы знать, есть ли способ скрыть левую и правую боковые панели по умолчанию, когда выбрана конкретная вкладка c. В этом случае вкладка 'Front'
. Я сделал это с shinyJs()
. Есть ли способ также скрыть значки 'gear'
и возможность вообще открыть правую боковую панель от "Front"
? Более конкретно, когда пользователь находится на вкладке Fron
t, отображение правой боковой панели, которое активируется, когда он щелкает значок gear
в верхнем правом углу, вообще не должно быть возможным. Нет правой боковой панели для этой вкладки, поскольку она пуста и бесполезна.
## app.R ##
library(shiny)
library(shinydashboard)
library(shinydashboardPlus)
library(DT)
library(shinyWidgets)
library(shinyjs)
ui <- dashboardPagePlus(
dashboardHeaderPlus(
enable_rightsidebar = TRUE,
rightSidebarIcon = "gears",
fixed = T
),
dashboardSidebar(
),
dashboardBody(
useShinyjs(),
tags$hr(),
tabsetPanel(
id ="tabA",
type = "tabs",
tabPanel("Front",icon = icon("accusoft")),
tabPanel("Data", icon = icon("table")
)
)
),
rightsidebar = rightSidebar(
)
)
server <- function(input, output) {
observe({
if (input$tabA == "Front") {
addClass(selector = "body", class = "sidebar-collapse")
removeClass(selector = "body", class = "control-sidebar-open")
} else {
removeClass(selector = "body", class = "sidebar-collapse")
addClass(selector = "body", class = "control-sidebar-open")
}
})
}
shinyApp(ui = ui, server = server)