【发布时间】:2019-05-30 13:05:57
【问题描述】:
我有兴趣在 Rshiny 中生成一个包含动态值的 div 列表,如下所示。
<div>1</div>
<div>2</div>
<div>3</div>
.
.
.
<div>9</div>
我通过(在服务器上)循环遍历列表中每个元素的列表和向量来做到这一点。我渲染了一个 UI output$x1, output$x2, output$x3, etc。同样,我在 ui 函数上循环创建 9 个 UI 元素。代码如下:
# Define UI for app that draws a histogram ----
ui <- fluidPage(
fluidRow(
lapply(1:9, function(i) {
uiOutput(paste0('x', i))
})
)
)
# Define server logic required to draw a histogram ----
server <- function(input, output) {
obj<- list(
col1=1:3,
col2=4:5,
col3=5:9
)
for(elem in obj){
for(num in elem){
print(paste0(num))
output[[paste0(x,num)]]<-renderUI({
tags$div(
tags$p(
num
)
)
})
}
}
}
shinyApp(用户界面,服务器) 我的代码有两个问题:
1) 出于某种我不知道的原因,我的 UI 上没有任何内容。
2)我相信当ui打印出来的时候,它只会打印出div的最终值。例如,output$x1 = 9, output$x2= 9, etc
【问题讨论】:
-
@GyD 不确定这有助于解决我的问题,但肯定是一个选项。