r
  • api
  • shiny
  • 2016-04-28 9 views 3 likes 
    3

    私のUIにはactiveButtonがあり、ユーザーがそれを押すたびに、次のobserveEventメソッドがAPIを呼び出して数値を返します。Shiny - observeEvent内のAPI呼び出し後のUIの更新

    observeEvent(input$submit, { 
    
        url <- "http://my_ip/predict?" 
        value <- paste0('value=', input$value) 
    
        response <- POST(paste0(url,value)) 
    
        predicted <- as.numeric(content(response)) 
    }) 
    

    問題は、UIのインフォボックスで(変数を「予測」)私は結果を表示したいということですが、予測する場合にのみ値を持っています。したがって、最初にユーザーがボタンを押すまで、そのinfoBoxは非表示にする必要があります。

    UIにどのような出力を付ける必要がありますか。 "予測された"ものが入力$値のようにどのようにふるまうことができましたか?

    ありがとうございます。

    APIを呼び出すときに解決策が機能reactiveValues()を使用していた

    EDIT:前の値に基づいて機能renderInfoBox()を使用して

    reactiveValues <- reactiveValues() 
    reactiveValues$predicted <- as.numeric(content(response)) 
    

    そして、。それに対する応答を追加する

    使用reactiveValues:上記のコメントから、これを更新するには

    +0

    にバインドするには、[shinyjs](https://github.com/daattali/shinyjs)を見てください。 – SymbolixAU

    +1

    'reactiveValues'を使用して応答を追加します。 'reactiveValues $ predicted < - as.numeric(content(response))'それを 'infoBox'にバインドします。 http://www.inside-r.org/packages/cran/shiny/docs/reactiveValues –

    +1

    @PorkChopソリューションで動作しました。どうもありがとうございました! –

    答えて

    0

    。要素を表示&非表示にする -

    reactiveValues$predicted <- as.numeric(content(response))

    その後、infoBox

    関連する問題