Open
Description
[Proposal]
to add to showcase / doc
ui <- function(id) {
ns <- NS(id)
tagList(
reactOutput(ns("tree")),
htmlOutput(ns("info"))
)
}
server <- function(id) {
moduleServer(id, function(input, output, session) {
ns <- session$ns
treeReactive <- reactiveVal(treeList)
observeEvent(input$expand, {
treeReactive(
modifyTree(treeReactive(), ids = input$expand$id, props = list(isExpanded = TRUE))
)
})
observeEvent(input$collapse, {
treeReactive(
modifyTree(treeReactive(), ids = input$collapse$id, props = list(isExpanded = FALSE))
)
})
output$tree <- renderReact({
Tree(
contents = treeReactive(),
onNodeExpand = setInput(ns("expand")),
onNodeCollapse = setInput(ns("collapse")),
onNodeClick = setInput(ns("click"))
)
})
select_node <- reactive({
input$click$id
})
expand_node <- reactive({
input$expand$id
})
collapse_node <- reactive({
input$collapse$id
})
output$info <- renderText({
paste0("Expanded: ", expand_node(), "<br>",
"Collapsed: ", collapse_node(), "<br>",
"Selected: ", select_node())
})
})
}
Metadata
Metadata
Assignees
Labels
No labels