我正在构建一个应用程序,允许用户提交足球运动员的阵型。播放器名称存储在 .csv 文件中。这些名称被读入,然后是选择输入的输入。用户应该首先选择一个编队,然后根据所选择的编队出现带有名称的选择输入。使用 lapply 可以很好地工作(在下面的示例中使用 2 个选择输入)。
我现在的问题是我想将选定的名称存储在一个变量中以进一步使用它们。变量 myval 应该存储选定的名称。它以某种方式仅适用于第一个选择输入的第一个选定名称。
我的意思是这可以工作并存储在第一个选择输入中选择的名称:
myval <- eventReactive(input$i[1],
{input$i[1]})
但这不起作用:
myval <- eventReactive(input$i[2],
{input$i[2]})
您可以在下面找到完整的代码。提前谢谢了!
ui.R:
fluidPage(
#Dropdown
selectInput("Formation", label = "Formation", choice = c("",433,343)),
#Output
uiOutput(outputId = "select_formation")
)
服务器.R:
function(input, output, session){
#input_names <- read.csv("temp.csv",TRUE,";")
input_names <- structure(list(Goalkeeper = c("-", "Max", "Mo", "Tobi", "", "",
""), Defender = c("-", "Bob", "Julius", "Mat", "Hans", "Peter",
"Tom")), class = "data.frame", row.names = c(NA, -7L))
output$select_formation = renderUI(
if(input$Formation == 433){
lapply(1:2,function(i){
selectInput(inputId = "i", label = names(input_names[i]), choices = c(input_names[,i]))
})
})
myval <- eventReactive(input$i[2],
{input$i[2]})
}