Я пытаюсь понять значение, хранящееся в shiny inputwidgets
. Я написал ниже код, который выводит sliderInput
и на основе значения sliderInput, создается другой элемент o/p i.e.
Если sliderInput
значение > 30, то он генерирует groupedradiobutton
иначе он генерирует a file upload button
library(shiny)
library(shinyWidgets)
ui <- fluidPage(
sliderInput(inputId = "num",
label = "Choose a number",
value = 25, min = 1, max = 100),
uiOutput("uploadorSelect"),
textOutput("RadioButtonValue")
)
server <- function(input, output) {
output$uploadorSelect <- renderUI({
x<-input$num
if( x > 30 ){
# render grouped radio buttons
radioGroupButtons(inputId = "opbAppendRemoveMonthlyOption",choices =c("Append","Continue"), status = "success",
direction = "horizontal",justified = F,checkIcon = list(yes=icon("ok",lib="glyphicon")),selected = character(0))
}else{
# render upload button
fileInput(inputId="btnUploadMonthlyFile",label = "Upload Monthly Data file")
}
})
output$RadioButtonValue<-renderText({
x<-(input$opbAppendRemoveMonthlyOption)
return(x)
})
}
shinyApp(ui = ui, server = server)
Ситуация: -
Шаг 1 - я изменил значение sliderInput на значение 31, которое генерирует groupedradiobutton, а затем я выбираю Append
из радиоблока
Шаг 2 - я снова изменил значение sliderInput на 32, которое регенерирует groupedradiobutton, которое, как мне кажется, должно reset значение input$opbAppendRemoveMonthlyOption
, используемое в блоке output$RadioButtonValue
как Null, но вместо этого оно все еще сохраняет значение, выбранное в шаге 1
Я думаю, это связано с тем, что когда я ссылаюсь на input$opbAppendRemoveMonthlyOption
в output$RadioButtonValue
, он возвращает кешированное значение? если это так, как можно установить значение по умолчанию каждый раз, когда я изменяю значение sliderInput?