Предположим, у меня есть следующий модуль Shiny, который не работает так, как я намереваюсь:
library(shiny)
# module
module_ui <- function(id) {
ns <- NS(id)
uiOutput(ns("choose"))
}
module_server <- function(input, output, session) {
output$choose <- renderUI({
selectInput(inputId = "option",
label = "choose your option",
choices = c("a", "b", input$entered_text))
})
}
# ui and server
ui <- fluidPage(
textInput("entered_text", label = "Enter a custom option:"),
module_ui("xyz")
)
server <- function(input, output, session) {
callModule(module_server, "xyz")
}
shinyApp(ui, server)
Как я могу направить глобальный ввод input$entered_text
(строка 10) в модуль так, чтобы текст, введенный пользователем, отображается в качестве выбора для selectInput
пользовательского интерфейса?
Я думаю, что должен использовать reactive()
, но я должен что-то делать не так.