Видимо, value
не очень полезен. Вот обсуждение этого вопроса. Это ответ Джо Чена на следующее замечание:
Я до сих пор не совсем понимаю сопротивление невозможности сброса в ноль - оно, по-видимому, не способствует любая плохая практика кодирования
Это, безусловно, способствует плохой практике кодирования. Просто посмотрите на все примеры кода в этой теме (конечно, не по вине пользователей - мы просто недостаточно хорошо поработали с образованием). Нажатие кнопки действия следует рассматривать как отдельное событие, а не как значение. Специальное значение 0 - это просто обходной путь, чтобы код не думал, что кнопка нажата при запуске. Это факт, что число изменилось, и это соответствующий сигнал, а не значение, которым это число было.
Если вы хотите посчитать, сколько раз была нажата эта кнопка, вот пример применения:
library(shiny)
library(shinyWidgets)
ui <- basicPage(
actionButton("click", "Click"),
verbatimTextOutput("number", placeholder = TRUE)
)
server <- function(input, output) {
count <- reactiveValues(value = 0)
observeEvent(input$click, {
count$value <- count$value + 1
output$number <- renderText(count$value)
})
}
shinyApp(ui = ui, server = server)