R Shiny: вкладка по умолчанию в bs4Dash - PullRequest
0 голосов
/ 22 марта 2019

Есть ли способ выбрать вкладку по умолчанию при запуске, используя пакет bs4Dash R?

В shinydashboard я использовал updateTabSetPanel, чтобы установить вкладку по умолчанию при запуске.

Ниже приведен воспроизводимый пример, я хотел бы, чтобы вкладка с именем "start" была выбрана при запуске.

library(shiny)
library(bs4Dash)

shiny::shinyApp(
  ui = bs4DashPage(
    navbar = bs4DashNavbar(),
    sidebar = bs4DashSidebar(
      skin = "light",
      bs4SidebarMenu(
        bs4SidebarHeader("Main content"),
        bs4SidebarMenuItem(
          "Classic theme",
          tabName = "classic",
          icon = "desktop"
        ),
        bs4SidebarMenuItem(
          "Start with me",
          tabName = "start", # <---- start with me!
          icon = "map"
        )
      )
    ),
    controlbar = bs4DashControlbar(
      skin = "light"
    ),
    footer = bs4DashFooter(),
    title = "Classic theme",
    body = bs4DashBody(
      bs4TabItems(
        bs4TabItem(
          tabName = "classic",
          fluidRow(
            bs4Box(
              height = "600px",
              title = "Box 1"
            ),
            bs4Box(
              height = "600px",
              title = "Box 2"
            )
          )
        )
      )
    )
  ),
  server = function(input, output) {}
)

1 Ответ

1 голос
/ 22 марта 2019

Используйте JavaScript для выбора вкладки вручную после инициализации сеанса Shiny:

tags$head(tags$script('
  $(document).on("shiny:sessioninitialized", function(event) {
    $(\'a[data-value="start"]\').tab("show");
  });
')),

Вы можете включить этот фрагмент в bs4DashBody.

...