我宣佈在R Shiny
代碼:爲什麼Shiny reactiveValues()不會按預期更改?
################# Security Login, part of server.R in R Shiny App
USER <- reactiveValues()
USER$Logged <- FALSE
## Some logic for login which changes USER$Logged to TRUE, eg. USER$Logged <- TRUE, this works well in changing to TRUE
## Logout handler fails because it can change to FALSE, but then resets back to TRUE
logoutHandler <- observeEvent(input$Logout,
USER$Logged <- FALSE
}
#This is the trace result. The number 1 or 0 is the value of input$Logout
#"USER$Logged: FALSE 1"
#"USER$Logged outside Handler: FALSE 1"
#"USER$Logged outside Handler: TRUE 1" #Proof of reset
#"USER$Logged outside Handler: TRUE 0" #Proof of reset
在代碼將不再工作結束。發生連接重置或沒有任何事情發生,只需將其重置爲TRUE並丟棄FALSE分配。
如何解決這個問題?
底什麼代碼?閃亮的應用程序被設計爲不中斷地運行,直到中斷 – jenesaisquoi
當用戶關閉應用程序時,你可以運行你的註銷功能嗎?如果是這樣看看'session $ onEnded()' –
我正在考慮設置'USER $ Logged < - FALSE'來使登錄無效。我有一些檢查USER $ Logged的邏輯。示例行:'if(USER $ Logged == TRUE){...一些代碼...}' –