как отобразить значение номера текстового поля с помощью renderUI shiny app R

#r #shiny #shiny-server #shinyapps

#r #блестящий #shiny-сервер #shinyapps

Вопрос:

Я хочу, чтобы значение номера текстового поля отображалось при вводе текста

и это то, что я пытаюсь сделать

 
# Define UI for application that draws a histogram
ui <- fluidPage(

    # Application title
    h1("Enter One Number"),
    numericInput("number","enter a number", "" , min = 1 , max = 100),
           uiOutput("uu")
        
    )

# Define server logic required to draw a histogram
server <- function(input, output) {

    output$uu <- renderUI({"you are typing " input$number })
   
}




 

Ответ №1:

Вам нужно обработать строку. Невозможно просто объединить их внутри a renderUI . Для объединения строк используйте paste sprintf или любую соответствующую строковую функцию.

 library(shiny)

ui <- fluidPage(
  h1("Enter One Number"),
  numericInput("number","enter a number", "" , min = 1 , max = 100),
  uiOutput("uu"))

server <- function(input, output, session) {
  output$uu <- renderUI({paste("you are typing", input$number) })
}

shinyApp(ui, server)
 

Ответ №2:

Вы не можете просто объединить текст и объект в R, но вы можете использовать paste для таких ситуаций.

 library(shiny)
ui <- fluidPage(
  
  # Application title
  h1("Enter One Number"),
  numericInput("number","enter a number", "" , min = 1 , max = 100),
  uiOutput("uu")
  
)

# Define server logic required to draw a histogram
server <- function(input, output) {
  
  output$uu <- renderUI({paste0("you are typing ", input$number) })
  
}


shinyApp(ui = ui, server = server)