本文介绍了有自己的侧边栏和主面板的选项卡在闪亮的版本中是可能的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想为不同的选项卡显示不同的输入。因此,我尝试构建一个包含几个选项卡面板的页面。但是,我不能有下面这样的东西:

library(shiny)

shinyUI(pageWithSidebar(
  headerPanel("Header"),

  tabsetPanel(
    tabPanel(
      headerPanel("Tab 1"),
      sidebarPanel(
        selectInput("var", "Parametre", choices = c("1", "2", "3"))
        ),
      mainPanel(
        textOutput("text1")
        )
      ),
    tabPanel(
      headerPanel("Tab 2"),
      sidebarPanel(
        selectInput("var", "Parametre", choices = c("21", "22", "23"))
      ),
      mainPanel(
        textOutput("text2")
      )
    )
    )
  ))

我怀疑pageWithSidebar导致了问题,但我在Google群中找不到替代方案。有没有办法用自己的侧边栏和主面板来显示多个选项卡,或者我是否应该为此创建不同的应用程序?

推荐答案

如果我没有误解您的问题,我认为您甚至可以通过提供tabsetPanel函数的ID(此处为id = "conditionedPanels")来避开jQuery部分(来自@f1r3br4nd答案)。然后可以通过input变量使用value参数(即在主面板中选择了哪个选项卡)。

最小示例server.R可能为空,但shinyServer函数框架除外。ui.R文件可能如下所示。

shinyUI(pageWithSidebar(
  headerPanel("Conditional Panels"),
  sidebarPanel(
    conditionalPanel(condition="input.conditionedPanels==1",
                     helpText("Content Panel 1")
    ),
    conditionalPanel(condition="input.conditionedPanels==2",
                     helpText("Content Panel 2")
    )
  ),
  mainPanel(
    tabsetPanel(
      tabPanel("Panel 1", value=1),
      tabPanel("Panel 2", value=2)
      , id = "conditionedPanels"
    )
  )
))

这篇关于有自己的侧边栏和主面板的选项卡在闪亮的版本中是可能的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-23 04:05