У меня проблема с обновлением реактивного значения в глянце.
Так что мое приложение в основном делает, чтобы сохранить textInputs от пользователя. Когда пользователь решает загрузить все текстовые входы, я хочу сбросить текстовые входы.
Следующий пример кода:
ui.R
ui <- fluidPage(
sidebarPanel(
textInput("words", "Please enter a word"),
actionButton("submit_new_word", "Save"), # this submits each single word
textOutput("submitted_new_words"), # this show all submitted words
actionButton("submit_upload", "Upload my Results") # this uploads all submitted words
)
)
server.R
server <- function(input, output, session) {
words_submitted <- paste("") # initial value
w_submitted <- eventReactive(input$submit_new_word, {
words_submitted <- paste(words_submitted, " ", input$words)
words_submitted <<- words_submitted
updateTextInput(session,
inputId = "words",
value = "")
return(words_submitted)
}, ignoreNULL=FALSE)
output$submitted_new_words <- renderText({
w_submitted()
})
observeEvent(input$submit_upload, {
# saveData(data_final) # upload, not needed for example here
words_submitted <<- paste("")
})
}
Если вы попробуете этот минимальный пример, вы увидите, что текстовые вводы будут сброшены, но только после после «Сохранить» снова нажимается кнопка.
Однако я хотел бы, чтобы при вводе кнопки «submit_upload» сбрасывались текстовые входы.
У кого-нибудь есть идея?