Сравнение ввода строк / символов в R Shiny Dashboard - PullRequest
0 голосов
/ 04 октября 2019

У меня есть код ниже на блестящей приборной панели, где я хочу отображать разные вещи в зависимости от того, что пользователь выбрал из выпадающего меню. Однако условие if всегда возвращает FALSE.

Что мне здесь не хватает?

#ui.r
body <- dashboardBody(
    selectInput(
        inputId  = "feel",
        label    = "choose level", 
        choices  = c(
            "Easy"     = "1", 
            "Advanced" = "2"
        ),
        selected = "1", 
        multiple = FALSE
    )

    if(textOutput("feel")=="1") {

    }
)


#server.r
function (input,output){
    output$feel<-renderText({
        input$feel
    })
}

1 Ответ

1 голос
/ 04 октября 2019

Вы должны выполнять всю бизнес-логику внутри server.R

library(shiny)

ui <- fluidPage(
  column(2,
         selectInput(inputId = "feel",label = "choose level", choices = c("Easy"="1", "Advanced"="2"),
                     selected = "1", multiple = FALSE)
  ),
  column(2,
         textOutput("feeloutput")
  )
)

server <- function(input, output, session) {

  output$feeloutput <- renderText({
    if(input$feel == "1"){
      "Show something"
    }
    else{
      "Show something else"
    }
  })

}

shinyApp(ui = ui, server = server)
...