Реактивные кнопки в реактивно обновляемой таблице данных

Мой вопрос является продолжением этого вопроса: R Shiny: обрабатывать кнопки действий в Таблица данных

Я пытаюсь добавить реактивные кнопки в таблицу данных, которая генерируется реактивно.

По сути, моя таблица состоит из фрейма данных на основе поискового запроса, введенного пользователем. Я хотел бы иметь кнопки в подмножестве и отображаемой таблице, но вместо того, чтобы кнопки отображались, как в связанном вопросе, я получаю для них HTML-код.

Вот код сервера:

server = function(input, output, session) {

table<-reactive({
  filter(evidence_test,grepl(input$search,evidence_abstract,ignore.case=TRUE))[,c(input$show_vars)]
})

shinyInput <- function(FUN, len, id, ...) {
  inputs <- character(len)
  for (i in seq_len(len)) {
    inputs[i] <- as.character(FUN(paste0(id, i), ...))
  }
  inputs
}

df<-reactive({reactiveValues(
  data=data.frame(
    table(),
    Actions = shinyInput(actionButton, nrow(table()), 'button_', label = "Fire", onclick = 'Shiny.onInputChange(\"select_button\",  this.id)' ),
    stringsAsFactors = FALSE

  )
)
})

observeEvent(input$select_button, {
  selectedRow <- as.numeric(strsplit(input$select_button, "_")[[1]][2])
})


output$tbl <- DT::renderDataTable({
  df()$data
});

output$myText <- renderText({

  colnames(df$data)
})

}

И вот код пользовательского интерфейса:

 ui = fluidPage(
headerPanel("Search for article terms"),
sidebarPanel(
  textInput(inputId="search",value="kras",label="Search for a term", width=400),
  checkboxGroupInput(inputId='show_vars', label='Columns to show:', dbListFields(database,"evidence_test"),
                     selected = c("evidence_title","evidence_abstract","evidence_score","evidence_priority"))
),
mainPanel(
  DT::dataTableOutput("tbl")
)

)

Спасибо за помощь.


person Dan    schedule 17.05.2018    source источник
comment
В отличие от реактивного значения, созданного функцией reactive, вам не нужны круглые скобки для доступа к значению из объекта реактивных значений, созданного reactiveValues. df()$data должно быть df$data. Посмотрите, решит ли это вашу проблему.   -  person divibisan    schedule 17.05.2018
comment
Спасибо за ответ! Итак, я попробовал это, и он избавился от ошибки - он не отображает кнопки правильно, вместо этого отображает для них html-код.   -  person Dan    schedule 17.05.2018
comment
Рад помочь в этом! Вы должны обновить свой вопрос, чтобы отразить вашу новую проблему, чтобы люди могли помочь вам с этим.   -  person divibisan    schedule 17.05.2018