Update handsontable by editing table and/or eventReactive
You could store the data in a reactiveValues
and have two observers updating it; one if the button is clicked, one if the table is edited by hand.
In your output$table
and output$result
, you then just need to use the data that is in the reactiveValues
. Here's an example (same ui.R
as you posted):
server <- function(input,output,session)({
values <- reactiveValues(data=as.data.frame(runif(2)))
observe({
input$recalc
values$data <- as.data.frame(runif(2))
})
observe({
if(!is.null(input$table))
values$data <- hot_to_r(input$table)
})
output$table <- renderRHandsontable({
rhandsontable(values$data)
})
output$result <- renderText({
sum(values$data)
})
})