哇!我明白了,伙计们!您应该只同时更新两个输入对象,并且更新到相同的值。这意味着添加这两行解决了我将初始值设置为 60 的问题,例如:
updateSliderInput(session,"param_slide", value = 60)
updateNumericInput(session,"param_numeric", value = 60 )
因此整个“server.R“会是这样的:
#
library(shiny)
shinyServer(
function(input,output,session) {
# Mutually dependent slider and numeric inputs
output$Param_s = renderUI({
sliderInput(inputId = "param_slide",
label= "My input parameter",
value= input$param_numeric,
min=1,
max=200)
})
output$Param_n = renderUI({
numericInput(inputId = "param_numeric",
label= "My input parameter",
value= input$param_slide,
min=1,
max=200)
})
updateSliderInput(session,"param_slide", value = 60)
updateNumericInput(session,"param_numeric", value = 60 )
})
您应该只知道添加这些更新
观察事件()
当您在其他选项卡上有这些输入对象时。在我使用“sidebarMenu”的情况下,我使用了一行简单的代码,如下所示:
observeEvent(input$sidebar_id =="tab1",{
updateSliderInput(session,"param_slide", value = 60)
updateNumericInput(session,"param_numeric", value = 60 )
})