Привет @Bijurika в bs4Dash. Вам нужно использовать числовое положение вкладки, а не имя вкладки.
Это должно сработать, я просто изменил значение «selected =« Tab 2 »на« selected = 2 ». '(и то же самое для "Tab 3")
library(shiny)
library(shinydashboard)
library(bs4Dash)
home<-bs4TabSetPanel(
id = "tabset1",
side = "left",
bs4TabPanel(
tabName = "Tab 1",
active = TRUE,
fluidRow(
box(radioButtons("abc", label = "Please select an option",
choices = c("Go to tab 2" = "G2", "Go to tab 3" = "G3"), selected = character()))
)
),
bs4TabPanel(
tabName = "Tab 2",
active = FALSE,
fluidRow(
h1("Welcome to tab 2")
)
),
bs4TabPanel(
tabName = "Tab 3",
active = FALSE,
fluidRow(
h1("Welcome to tab 3")
)
)
)
ui<- bs4DashPage(
navbar = bs4DashNavbar(),
sidebar = bs4DashSidebar(),
controlbar = bs4DashControlbar(),
footer = bs4DashFooter(),
title = "test",
body = bs4DashBody(
home
)
)
server<- function(input, output, session){
observeEvent(input$abc,{
if (input$abc == "G2"){
updatebs4TabSetPanel(session, "tabset1", selected = 2)
} else{
updatebs4TabSetPanel(session, "tabset1", selected = 3)
}
})
}
shinyApp(ui,server)