0
我在創建數據表和創建數據表之間存在爭用條件。有沒有辦法在顯示數據表之前確保數據表存在。 流動是創建和顯示數據表在閃亮之間的競爭條件
從列表的reactiveValues列表創建數據
顯示該新的數據
library(shiny)
library(data.table)
library(foreach)
library(DT)
ui <- fluidPage(DT::dataTableOutput("table"))
server <- function(input, output, session) {
values <- reactiveValues()
# Adding lists dynamically
values[["A"]] <- list(info = 1, data = data.table(i = 1, j = 2))
values[["B"]] <- list(info = 10, data = data.table(i = 10, j = 20))
observe({
# Update data everytime new elements are added to values
# This is just adding all data.tables as rows to one data.table
data <- rbindlist(foreach(list = reactiveValuesToList(values)) %do% list$data)
})
output$table <- DT::renderDataTable(data)
}
shinyApp(ui, server)
數據內的觀察功能,然後創建使用DT :: renderDataTable進行渲染
三江源,所以這取決於reactiveValue的值不會自動使之反應。它必須特別製作爲反應性 – MySchizoBuddy
是的,您只需要'<--'而不是'<< - ',因爲reactiveValues不像正常的R listsl那樣修改。 – jenesaisquoi