从下面的例子中,我希望用户输入的显示只能每2秒(2000毫秒)更新一次。但事实并非如此,它的更新速度与我不包含辩论声明的时间一样快。
if (interactive()) {
options(device.ask.default = FALSE)
ui <- fluidPage(
textInput(inputId = "text",
label = "To see how quickly..."),
textOutput(outputId = "text")
)
server <- function(input, output, session) {
text_input <- reactive({
input$text
})
debounce(text_input, 2000)
output$text <- renderText({
text_input()
})
}
shinyApp(ui, server)
}
答案 0 :(得分:2)
您必须分配debounce()
来电的结果并在输出中使用该结果:
server <- function(input, output, session) {
text_input <- reactive({
input$text
})
text_d <- debounce(text_input, 2000)
output$text <- renderText({
text_d()
})
}