如何在键入时停止发生文本更新?

时间:2016-01-02 09:33:33

标签: r shiny

我正在尝试编写一个小巧的应用程序,将代码输入到textInput字段中,当我按下按钮时,将其显示在textInput下面。我不希望它在我输入时自动更新。

它工作一次,但在我点击actionButton之后,verbatimTextOutput中的文本在我输入时开始更新。我如何阻止这一点,以便verbatinTextOutput仅在我点击applyButton时更新?我应该使用verbatinTextOutput吗?感谢。

server.R

library(shiny)

shinyServer(function(input, output) {

    # You can access the value of the widget with input$text, e.g.

    observeEvent(input$doBtn, {
        #... # do some work
        output$value <- renderPrint({input$text})
        #... # do some more work
   })
})

ui.R

library(shiny)
shinyUI(fluidPage(

    # Copy the line below to make a text input box
    textInput("text", label = h3("Text input"), value = "Enter text..."),
    actionButton("doBtn", "Do something"),    
    hr(),

    fluidRow(column(3, verbatimTextOutput("value")))   
))

1 个答案:

答案 0 :(得分:1)

想出来。

server.R

library(shiny)
shinyServer(function(input, output) {

    output$value <- renderText({
    if (input$doBtn == 0)
        return()

    isolate({input$text})
    })    
})