自从添加了 eventReactive 和 observeEvent 之后,Isolate 就不再起作用了吗?
Isolate no longer works since addition of eventReactive and observeEvent?
之前,我构建了一个带有图表输出的闪亮仪表板,效果很好,如下所示:
output$someName <- renderGvis({
input$inputButton
data <- isolate(myData(function here))
donut <- gvisDonut({...})
return(donut)
})
自从添加了 observeEvent 和 eventReactive 之后,我一直无法让它像以前一样工作。本质上,output$someName 是一个依赖于多个输入的图表,每次用户点击 inputButton 时,我都需要 renderGvis 重新计算。当任何其他输入发生变化时,仅当按下按钮时,该功能不应重新评估。
我很幸运在 input$inputButton 单击时将 observeEvent 设为 运行,但是,每次我更改任何输入参数时,查询都会快速重新 运行,而无需按下按钮。这里有人要吗?
下面更详细:
output$someName <- renderGvis({
input$inputButton
data <- isolate(dataGrabber({})) # function that takes input and returns data frame using RMySQL
isolate(simpleChart(data = data)) # simpleChart is a function to produce a gvisCalendar chart.
好的...如果有人遇到过这个问题,请找到答案。由于某种原因我过去没有遇到过的问题是,无论 actionButton 的值是否为 0,隔离功能现在 运行s。我相信在过去,它不会 运行 直到 actionButton 的值大于 0。
简单的修复是:
output$someName <- renderGvis({
input$inputButton
if (input$inputButton == 0)
return()
isolate({ code to isolate})
})
之前,我构建了一个带有图表输出的闪亮仪表板,效果很好,如下所示:
output$someName <- renderGvis({
input$inputButton
data <- isolate(myData(function here))
donut <- gvisDonut({...})
return(donut)
})
自从添加了 observeEvent 和 eventReactive 之后,我一直无法让它像以前一样工作。本质上,output$someName 是一个依赖于多个输入的图表,每次用户点击 inputButton 时,我都需要 renderGvis 重新计算。当任何其他输入发生变化时,仅当按下按钮时,该功能不应重新评估。
我很幸运在 input$inputButton 单击时将 observeEvent 设为 运行,但是,每次我更改任何输入参数时,查询都会快速重新 运行,而无需按下按钮。这里有人要吗?
下面更详细:
output$someName <- renderGvis({
input$inputButton
data <- isolate(dataGrabber({})) # function that takes input and returns data frame using RMySQL
isolate(simpleChart(data = data)) # simpleChart is a function to produce a gvisCalendar chart.
好的...如果有人遇到过这个问题,请找到答案。由于某种原因我过去没有遇到过的问题是,无论 actionButton 的值是否为 0,隔离功能现在 运行s。我相信在过去,它不会 运行 直到 actionButton 的值大于 0。
简单的修复是:
output$someName <- renderGvis({
input$inputButton
if (input$inputButton == 0)
return()
isolate({ code to isolate})
})