[英]scoping in shiny flexdashboard
我有一個使用閃亮的flexdashboard 。 這是.Rmd
的MRE 存儲庫和要點。 當我將該應用程序上線 Shinyapps.io 時,我意識到一個用戶的操作可能會影響其他用戶。 我知道這是一個范圍界定問題,但我對 Flexdashboard 中范圍界定的工作方式感到困惑。
此頁面解釋了“常規”閃亮應用程序的范圍:
您可能希望某些對象在所有會話中都可見。 例如,如果您有大型數據結構,或者如果您有非反應性的實用程序函數(不涉及輸入或輸出對象的那些),那么您可以創建一次這些對象並在所有用戶會話中共享它們(在相同的 R 進程),將它們放在 app.R 中,但在服務器函數定義之外。
在 Flexdashboard 中,沒有app.R
文件或server
功能。 范圍界定在這些類型的閃亮應用程序中是如何工作的?
我有幾個這樣的eventReactive()
函數,當用戶 1 點擊提交並在文件末尾觸發observeEvent(input$submit, {})
時observeEvent(input$submit, {})
它們會為用戶 2 更新。
eventReactive(rv$run2, {
if (remote==1) {
master$df <- drop_read_csv("/dash/master.csv", stringsAsFactors = FALSE)
} else {
master$df <- read.csv("dash/master.csv", stringsAsFactors = FALSE)
}
}, ignoreNULL = TRUE)
我最初在大約 9 小時前將其發布到 RStudio 社區,但它沒有產生很多觀點(<20)或任何討論。
將rv <- reactiveValues()
移出global
塊就行了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.