Я пытаюсь создать приложение с проверкой полей и возникают проблемы с полями.
Проблема в том, что я не могу сделать меньшее поле между textInput
(электронная почта) и uiOutput
(сообщение об ошибке) меньшим. Я уже пытался изменить поля и отступ сообщения об ошибке, но это не помогает.
Что мне нужно получить в этой упрощенной версии:
- Между ними есть два поля с нормальным расстоянием (15 пикселей). И мне нужно держать то же расстояние, когда нет сообщения об ошибке.
Когда я нажимаю кнопку «Регистрация», она подтверждается, и если имя пользователя пусто, появляется сообщение об ошибке:
Если я проверяю код в в моем браузере отображается поле с полями 15 пикселей:
Код:
library(shiny)
library(shinyalert)
ui <- fluidPage(
titlePanel("Error test"),
tags$head(tags$style(HTML("
/* errors */
.shiny-output-error-validation {
color: #ff0000;
font-size: 13px;
margin-bottom: 7px;
margin-top: 0px;
padding-top: 0px;
font-weight: bold
}
"))),
mainPanel(
textInput("user_name", "Username (Email):", ),
uiOutput("error_email"),
textInput("bla", "Test:"),
actionButton("register_button", "Register")
)
)
server <- function(input, output) {
observeEvent(input$register_button, {
if (input$user_name != "") {
shinyalert("Your registration was successfull")
} else {
output$error_email <- renderUI({
validate(
need(
input$user_name != "",
paste("Email Address: Please Input a valid E-mail address")
)
)
})
}
})
}
shinyApp(ui = ui, server = server)