Я объявил 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 $ Записан. Пример строки: 'if (USER $ Logged == TRUE) {... some code ...}' –