0
私はテンプレートの下の行にShinyappを作成しています:sliderInputタブが選択されている場合にのみ、サイドバーに表示する
library(shinydashboard)
sidebar <- dashboardSidebar(
sidebarMenu(id="tabs",
menuItem("Tab1", tabName="Tab1", selected=TRUE),
menuItem("Tab2", tabName = "Tab2")
),
conditionalPanel("input.tabs=='Tab1'",
fluidRow()
),
conditionalPanel("input.tabs=='Tab2'",
fluidRow()
)
)
body <- dashboardBody(
tabItems(
tabItem(tabName = "Tab1",
fluidRow(sliderInput("aa", "aa", value = 0.9, min = 0, max = 2, step=0.1))
),
tabItem(tabName = "Tab2",
fluidRow(navbarPage(id = 'ab', title = "",
tabPanel(title = "aa1", value = 'aa1', fluidRow()),
tabPanel(title = "aa2", value = 'aa2', fluidRow())))
)))
ui = dashboardPage(
dashboardHeader(title = "My tab"),
sidebar,
body
)
server = function(input, output) {}
shinyApp(ui = ui, server = server)
は今、私は基本的に何をしたい、sliderInputはサイドパネルに表示されます場合にのみ、 TabPanel = 'aa2'
からtabItem = 'Tab2'
まで。したがって、TabPanel = 'aa1'
が選択されている場合は、sliderInputは表示されません。
これまでのところ、私は以下のような何か試してみました:これでしかし
sidebar <- dashboardSidebar(
sidebarMenu(id="tabs",
menuItem("Tab1", tabName="Tab1", selected=TRUE),
menuItem("Tab2", tabName = "Tab2")
),
conditionalPanel("input.tabs=='Tab1'",
fluidRow()
),
conditionalPanel("input.tabs=='Tab2'",
fluidRow(sliderInput("aa5", "aa", value = 0.9, min = 0, max = 2, step=0.1))
)
)
をsliderInputは、私はしたくないの両方tabPanel = "aa1"
& tabPanel = "aa2"
、することも可能です。
私はsliderInputをどのようにして作ることができますか?tabPanel = "aa2"
の場合のみ表示されます。
あなたのポインタをありがとう。
'shinyjs'パッケージから' hide'関数を使ってみることができます。これはサーバー側から行われます。 [this](http://deanattali.com/shinyjs/overview#demo)リンクをたどることができます。 – SBista