あなたはreactiveValue()
に保管し、コメントで述べたようにselectInput()
を経由して選択することができます
ui <- fluidPage(
uiOutput("parent"),
actionButton("add", "add"),
actionButton("remove", "remove"),
verbatimTextOutput("txt")
)
server <- function(input, output){
global <- reactiveValues(lst = list(list(list(1),list(2), list(3))))
output$parent <- renderUI({
selectInput("par", "parent", 1:length(global$lst[[1]]))
})
observe({
if(input$remove){
isolate({
lst <- global$lst[[1]]
len <- as.numeric(input$par)
lens <- lengths(lst)
global$lst[[1]][[len]][[lens[len]]] <- NULL
})
}
})
observe({
if(input$add){
isolate({
lst <- global$lst[[1]]
len <- as.numeric(input$par)
lens <- lengths(lst)
global$lst[[1]][[len]][[lens[len] + 1]] <- "i am the new guy"
})
}
})
output$txt <- renderPrint({
str(global$lst)
})
}
shinyApp(ui, server)
あなたは1.1.2または1.2.1を追加する場合はどのように決めるのですか? – BigDataScientist
複数レベルのリスト内のすべての項目にアクションボタンが表示され、子を追加して親として設定します。これは可能ですか、それとも単に他のメンバーを追加する方が簡単でしょうか?ユーザーは番号スキーマを定義し、リストはその入力に合わせて調整されますか? –
私はselectinputを提案して親を選択し、次に、アクションボタンで選択した親に子を追加します。あなたはどう思いますか? – BigDataScientist