Привет, Дин,
спасибо за ваш потрясающий пакет. Я думаю, было бы полезно, если бы функция reset()
могла сбрасывать radioButtons в состояние, в котором не выбрана кнопка (чего вы можете достичь с помощью selected = character(0)
.
Извините, но shinyjs не будет поддерживать эту функцию до тех пор, пока shinyjs не будет. Я имею в виду, что с помощью shiny вы можете обновить значение переключателя (используя updateRadioButtons()
), но это не позволяет вам ничего выбирать в качестве значения. Кроме того, если вы посмотрите документацию по переключателям, в ней прямо говорится, что использование character(0)
возможно, но не рекомендуется по той причине, что невозможно вернуться в это состояние. Так что я предпочитаю оставаться в рамках тех же блестящих рамок, а не предоставлять эту функциональность.
Если вам действительно нужно это сделать, вы можете использовать renderUI(radioButtons(...))
если хотите :)
@daattali Спасибо за этот отличный пакет! По состоянию на 21 день назад это поведение теперь правильно поддерживается в блестящем: https://github.com/rstudio/shiny/commit/770ebc394f1685c2d4a1eb7fd2d1610796281b84 https://github.com/rstudio/shiny/issues/2266
Входное значение сбрасывается до NULL
.
Было бы неплохо, если бы shinyjs мог поддерживать это сейчас. Почему эта функция полезна, даже если пользователь не может вернуться в невыделенное состояние?
Я создаю блестящее приложение для (категориального) ввода данных, чтобы избежать случайных, затяжных вводов из предыдущих случаев / наблюдений, я очищаю все переключатели, которые также disable
s кнопка отправки (спасибо shinyjs 😁).
А
library(shiny) # > 1.5.0
library(shinyjs)
shinyApp(
ui = fluidPage(
useShinyjs(),
div(
id = "form",
radioButtons("gender", "Gender", c("Male", "Female"), selected = character(0))
),
actionButton("resetGender", "Reset Gender"),
),
server = function(input, output, session) {
observeEvent(input$resetGender, {
updateRadioButtons(session, "gender", selected = character(0))
})
observe(print(input$gender))
})
}
)
}
Спасибо, что дал мне знать. Я снова открою проблему, но не знаю, когда / смогу ли я поработать над этой функцией. Я бы приветствовал пиар
Самый полезный комментарий
Спасибо, что дал мне знать. Я снова открою проблему, но не знаю, когда / смогу ли я поработать над этой функцией. Я бы приветствовал пиар