Получить активную TabName - PullRequest
       69

Получить активную TabName

1 голос
/ 05 апреля 2020

Я хочу получить активное имя табуляции. Я знаю, что это возможно, используя параметр id в sidebarmenu, а затем вызвать его с помощью ввода $ id на сервере. Я не могу использовать эту функцию, так как у меня есть настроенная боковая панель, которая не возвращает название выбранной (или активной) вкладки. Поэтому я хочу решить это, используя javascript. Я попробовал это с помощью JS $('.tab-content').find('.active').attr('data-value'), но он не работает должным образом.

library(shiny)
library(shinydashboard)
library(shinyjs)


jscode <- "shinyjs.gettab = function () {
 $('.tab-content').find('.active').attr('data-value')
 }"

  ui <- dashboardPage(
    dashboardHeader(title = "Basic Use of JS"),
    dashboardSidebar(
      sidebarMenu(
        menuItem(
          text = "HOME",
          tabName = "home",
          icon = icon("home")
        ),
        menuItem(
          text = "MAP",
          tabName = "map",
          icon = icon("map")
        )
    )),
    dashboardBody(
      useShinyjs(),
      extendShinyjs(text = jscode)

    ))

  server = function(input, output) { 

    observe({ print(js$gettab()) })

    }

runApp(list(ui = ui, server = server), launch.browser =T)
...