Shiny - 在observeEvent内调用API后更新UI

时间:2016-04-28 05:29:18

标签: r api shiny

我的UI有一个activeButton,每当用户按下它时,以下observeEvent方法调用API并返回一个数值。

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中显示结果(“预测”变量),但仅在预测值有值时才显示。因此,必须隐藏该infoBox,直到用户第一次按下按钮。

我应该在UI中添加什么样的输出? “预测”如何表现得像输入$ value?。

非常感谢你。

修改

解决方案是在调用API时使用函数reactiveValues()

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

然后,使用基于先前值的函数renderInfoBox()

1 个答案:

答案 0 :(得分:0)

要从上面的评论中更新此内容:

使用reactiveValues添加响应。

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

然后将其绑定到infoBox