我超级棒的Shiny应用程序看起来像这样:
library(shiny)
ui <- fluidPage(
numericInput(inputId = "A", label = "A", value = 5, step = 1),
uiOutput("slider"),
textOutput(outputId = "value")
)
server <- function(input, output) {
output$value <- renderText(paste0("A + B = ", input$A + input$B))
output$slider <- renderUI({
sliderInput(inputId = "B", label = "B", min = 0, max = 2*input$A, value = 5)
})
}
shinyApp(ui = ui, server = server)
B的sliderInput是动态的(S / O到HubertL & BigDataScientist),但现在我需要保护A的输入不受负数的影响。
我怎么能做到这一点?
答案 0 :(得分:0)
您只需要向min=0
添加numericInput()
参数即可。之后,它将不允许用户超过0.
答案 1 :(得分:0)
在numericInput()中设置min参数不能完全解决问题。它适用于鼠标输入,但不适用于键盘输入。您可以创建一个反应式验证来检查数字输入是否符合您的标准,如下所示:
sys.path
我会在isValid_num的逻辑条件中添加is.integer(input $ num),这样用户就不会输入字符或浮动...