Я пытаюсь передать реактивные данные в updateSelectizeInput , но вместо этого получаю следующую ошибку:
Ошибка в .getReactiveEnvironment () $ currentContext (): Операция не разрешена безактивный реактивный контекст.(Вы пытались сделать что-то, что можно сделать только из реактивного выражения или наблюдателя.)
Мой код выглядит следующим образом:
ui.R
library(shiny)
ui_panel <-
tabPanel("Text Input Test",
sidebarLayout(
sidebarPanel(
selectizeInput('Organisations', label = "Organisation Search",
choices = NULL, options = list(
placeholder = 'Type the organisation name', maxOptions = 10,
maxItems = 1, searchConjunction = 'and')),
tags$style(type="text/css",
".selectize-input::after{visibility:hidden;};"
),
br(),
selectInput(
inputId="selectData",
label=" ",
choices=c("Universities", "Hospitals")
),
br()
),
mainPanel(
tabsetPanel(
tabPanel("output of Organisation search
details",htmlOutput("orgsearchdetails"))
)
)
))
ui <- shinyUI(navbarPage(" ",ui_panel))
server.R
library(shiny)
shinyServer(
function(input, output, session) {
orgdata <- reactive({if(input$selectData=='Universities'){
orgdata <- read.csv("universities.csv")
}else if (input$selectData=='Hospitals'){
orgdata <- read.csv("hospitals.csv")
}
orgdata
})
updateSelectizeInput(session, 'Organisations', choices =
as.character(unique(
orgdata()$name)), server = TRUE)
output$orgsearchdetails <-renderUI({
})
session$onSessionEnded(function() { dbDisconnect(con) })
})
Есть ли способ передать реактивность selectInput в updateSelectizeInput?
IЯ выбираю updateSelectizeInput вместо реактивного selectInput, чтобы избежать заполнения поля при запуске приложения.
Любая помощь или понимание очень приветствуется.заранее спасибо.