Мне нужно нажать кнопку, чтобы изменить выбранную боковую навигационную вкладку в приложении блестящего материала.
Я попробовал стандартную блестящую функцию 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)
В настоящее время кнопка просто не производит вывод.
Спасибо