У меня есть несколько динамических текстовых элементов. Количество элементов определяется раскрывающимся списком. Я хотел бы объединить каждый из динамических текстовых элементов в список, но у меня возникли трудности.
Я попытался создать отдельный реактивный объект для объединения элементов.
server <- function(input,output) {
#define number of names and dynamic names
output$input_ui1<- renderUI({
num<- as.integer(input$num)
lapply(1:num,
function(i) {
textInput(inputId = paste0("name",i ),
label= paste0("Name",i),
value= "enter name")
})
})
#Names into list
names_list<-NULL
reactive({
for (i in 1:input$num ) {
name<- input[[paste0("name",i)]]
names_list<-c(names_list, name)
}
})
#access first item of list of names
output$test_text<-reactive({
(names_list[1])
})
#access first name
output$test_text2<-reactive({
(input[["name1"]])
})
}
ui<- fluidPage(sidebarLayout(
sidebarPanel(
selectInput("num","select number of names",choices= seq(1, 10, 1)),
uiOutput("input_ui1"),
dateRangeInput("daterange1", "Date range:", start = "2001-01-01", end = "2010-12-31"),
uiOutput("test_text"),
uiOutput("test_text2")
),
mainPanel()
))
shinyApp(ui=ui, server=server)
У меня есть два тестовых текста в моем пользовательском интерфейсе "test_test" и "test_test2". Я ожидаю, что оба будут отображать одно и то же, но только второе отображает имя, как и ожидалось.