访问Shiny中的列表ID

时间:2018-11-23 11:23:43

标签: r shiny

我必须创建一个数量可变的checkboxInput,并为每个数字输入一个相关的数字。我在此页面上找到了一种有趣的方式,可以通过列表轻松地在UI上显示它,但是我没有设法将其ID一起用作其他服务器功能上的输入参数。

我尝试过:

input[[paste0("x",1:length(Animals)]]

但是我需要一种替代方式来使用所有ID。

代码如下:

runApp(list(
  ui = fluidPage( 

    fluidRow(
      column(3,
             uiOutput("RenderSliders")
      )
    )
  ),

  server = function(input, output) {

    output$RenderSliders <- renderUI({

      Animals     <- c("cat","dog","fish","cow")
      NrOfAnimals <- length(Animals)

      L <- vector("list",length = NrOfAnimals)

      for(i in 1:NrOfAnimals){

        L[[i]]  <- fluidRow(column(1,checkboxInput(paste0("x",i) ,NULL,TRUE)),
                            column(2,Animals[i]),
                            column(4,numericInput(paste0("y",i) , NULL, value = i, min = 0, max = 10, step = 1)))
      }
      return(L)
    })
  }
))

感谢您能为我提供的任何帮助。

谢谢大家。

编辑:您的回答可帮助我调试我的应用程序,并意识到问题不是我所解决的。我用正确的问题更新了帖子。

0 个答案:

没有答案