Почему renderUI не рендерит selectInput в цепочке входов - PullRequest
0 голосов
/ 29 ноября 2018

Итак, у меня есть цепочка selectInput(), которую мне нужно отрендерить, как только у нас будет выбор из предыдущего selectInput().Кажется, работает нормально, но последний не рендер.

В моем файле server.R у меня есть следующее реактивное выражение и выражение renderUI:

  time_series_names <- reactive({
    req(input$ac, input$factor_type, input$sub_type1, cancelOutput = FALSE)
    #calls an external function to get choices for selectInput...never gets
    #called and I'm not sure why...
    tryCatch({get_names_of_factors(asset_class = input$ac,
                                   factor_type = input$factor_type,
                                   sub_type = input$sub_type1)},
             error = function(e){
               cat("Waiting on metadata to be selected...\n")
               NULL
             })
    })

  output$selectTimeSeries <- renderUI({
    browser()
    req(input$ac, input$factor_type, input$sub_type1, cancelOutput = FALSE)
    selectInput("var",
                label = "Time Series",
                choices = time_series_names(),
                multiple = TRUE)
    })

Таким образом, вы видите требуемую цепочку из трех input$..., но я не уверенпочему я не могу получить output$selectTimeSeries для рендеринга с uiOutput, как только я все выбрал.Я думал, что, поскольку time_series_name() реактивен, это вызовет выражение renderUI?Я действительно правильно написал uiOutput("selectTimeSeries") в моем файле ui.R.

1 Ответ

0 голосов
/ 29 ноября 2018

Извините за плохой вопрос, у меня было req(input$sub_type1), но этого реактивного значения не существовало (должно было быть req(input$sub_type)).

...