R Shiny - 条件面板中的条件面板

Cat*_*ell 7 r shiny shiny-server

我想知道是否有可能在另一个条件面板中有一个条件面板.

例如,如果我有一个包含两个选项的下拉列表:1和2

选择1将显示一组选项,选择2将显示一组不同的选项.

但是有可能将条件面板嵌套在这些条件面板中,这样我就可以在选项1的输入中有另一个下拉列表.

下面是一些我想要做的例子的代码,但这不起作用

 selectInput("n", label = h3("Select Option"), 
                choices = list("1" = 1, "2" = 2),
                selected = 1),
  #1
  conditionalPanel(
    condition = "input.n == '1'",
    titlePanel("1 Options"),
    selectInput("b", label = h4("Select Option"), 
                choices = list("A" = 1, "B" = 2),
conditionalPanel(
condition = "input.b == '1'",
    titlePanel("1 Options")
),

conditionalPanel(
condition = "input.b == '2'",
    titlePanel("2 Options")
),

    )),
Run Code Online (Sandbox Code Playgroud)

pha*_*man 5

是的,您可以轻松地嵌套条件面板,或多或少正如您所尝试的那样。在您的代码中,您只是有一些放错位置的括号和多余的逗号。我认为这是一个可以满足您要求的工作应用程序:

ui <- fluidPage(
  selectInput("n", label = h3("Select Option"), 
        choices = list("1" = 1, "2" = 2),
        selected = 1),
  conditionalPanel(
    condition = "input.n == '1'",
    titlePanel("1 Options"),
    selectInput("b", label = h4("Select Option"), 
          choices = list("A" = 1, "B" = 2)),
    conditionalPanel(
          condition = "input.b == '1'",
          titlePanel("1 Options")
      ),
      conditionalPanel(
          condition = "input.b == '2'",
          titlePanel("2 Options")
      )      
  )
)

server <- function(input, output){}

shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)