Программно изменить выбранную навигационную вкладку в приложении R глянцевый материал - PullRequest
0 голосов
/ 27 июня 2019

Мне нужно нажать кнопку, чтобы изменить выбранную боковую навигационную вкладку в приложении блестящего материала.

Я попробовал стандартную блестящую функцию updateTabsetPanel (), которую я не смог заставить работать в этом случае. Я также пытался использовать пакет поступивший с помощью пакета sendjustomMessage пакет on-click, но не могу получить правильное выражение сообщения js.

Для демонстрации я адаптировал пример из: https://ericrayanderson.github.io/shinymaterial/

library(shiny)
library(shinymaterial)

ui <- material_page(
    title = "Basic Page + Side-Nav with Tabs",
    nav_bar_fixed = TRUE,

    material_side_nav(fixed = TRUE,

                                        material_side_nav_tabs(
                                            side_nav_tabs = c(
                                                "Example Side-Nav Tab 1" = "example_side_nav_tab_1",
                                                "Example Side-Nav Tab 2" = "example_side_nav_tab_2"
                                            ),
                                            icons = c("cast", "insert_chart")
                                        )),
    material_side_nav_tab_content(
        side_nav_tab_id = "example_side_nav_tab_1",

        material_button(input_id = 'change_nav_tab_btn',
                                        label = 'Click to change tab')
    ),
    material_side_nav_tab_content(side_nav_tab_id = "example_side_nav_tab_2",
                                                                tags$h1("Second Side-Nav Tab Content"))
)

server <- function(input, output) {
    shinyjs::onclick(
        id = 'change_nav_tab_btn',
        expr = session$sendCustomMessage("$('#example_side_nav_tab_2_tab_id').show()")
    )

}
shinyApp(ui = ui, server = server)

В настоящее время кнопка просто не производит вывод.

Спасибо

...