【问题标题】:DT::replaceData behavior in shiny modules闪亮模块中的 DT::replaceData 行为
【发布时间】:2019-03-25 07:35:34
【问题描述】:

我无法让DT::replaceData 在模块中工作。在 rstudio/DT GitHub 页面上,issue 359 谈到了在 DT_0.2.6 之后实施的修复。

但是,当我尝试实现该代码时,我没有看到按预期重绘的表格。下面是一个我从 GitHub 页面稍微修改的示例,以 (1) 缩小数据的大小并 (2) 添加一个消息函数,以便我可以确认问题不在反应性 loopData() 中,而是在致电DT::replaceData()

我的阅读似乎表明这个问题应该已经解决了。如果这是我的依赖问题,我还包括了来自devtools::session_info()的输出

首先是代码。

library(shiny)
library(DT)

modUI <- function(id) {
  ns <- NS(id)
  fluidPage(
    fluidRow(
      column(2, actionButton(ns('refresh'), 'Refresh Data', icon = icon('refresh'))),
      column(10, DT::dataTableOutput(ns('foo')))
    )
  )
}

modServer <- function(input, output, session) {
  df = iris[1:10, ]
  n = nrow(df)
  df$ID = seq_len(n)

  loopData = reactive({
    input$refresh
    df$ID <<- c(df$ID[n], df$ID[-n])
    df
  })

  output$foo = DT::renderDataTable(isolate(loopData()))

  proxy = dataTableProxy('foo')

  observe({
    message(head(loopData(),1))
    replaceData(proxy, loopData(), resetPaging = FALSE)
  })
}

shinyApp(
  ui = modUI('module'),
  server = function(input, output, session) callModule(modServer, 'module')
)

我的会话信息

Session info ---------------------------------------------------------------------------------------
 setting  value                       
 version  R version 3.4.0 (2017-04-21)
 system   x86_64, mingw32             
 ui       RStudio (1.1.456)           
 language (EN)                        
 collate  English_United States.1252  
 tz       America/New_York            
 date     2019-03-01                  

Packages -------------------------------------------------------------------------------------------
 package     * version date       source        
 base        * 3.4.0   2017-04-21 local         
 compiler      3.4.0   2017-04-21 local         
 crosstalk     1.0.0   2016-12-21 CRAN (R 3.4.4)
 datasets    * 3.4.0   2017-04-21 local         
 devtools      1.13.6  2018-06-27 CRAN (R 3.4.4)
 digest        0.6.16  2018-08-22 CRAN (R 3.4.4)
 DT          * 0.5     2018-11-05 CRAN (R 3.4.4)
 graphics    * 3.4.0   2017-04-21 local         
 grDevices   * 3.4.0   2017-04-21 local         
 htmltools     0.3.6   2017-04-28 CRAN (R 3.4.4)
 htmlwidgets   1.3     2018-09-30 CRAN (R 3.4.4)
 httpuv        1.4.5   2018-07-19 CRAN (R 3.4.4)
 jsonlite      1.5     2017-06-01 CRAN (R 3.4.4)
 later         0.7.5   2018-09-18 CRAN (R 3.4.4)
 magrittr      1.5     2014-11-22 CRAN (R 3.4.4)
 memoise       1.1.0   2017-04-21 CRAN (R 3.4.4)
 methods     * 3.4.0   2017-04-21 local         
 mime          0.5     2016-07-07 CRAN (R 3.4.1)
 promises      1.0.1   2018-04-13 CRAN (R 3.4.4)
 R6            2.2.2   2017-06-17 CRAN (R 3.4.4)
 Rcpp          1.0.0   2018-11-07 CRAN (R 3.4.4)
 rlang         0.3.1   2019-01-08 CRAN (R 3.4.4)
 shiny       * 1.1.0   2018-05-17 CRAN (R 3.4.0)
 stats       * 3.4.0   2017-04-21 local         
 tools         3.4.0   2017-04-21 local         
 utils       * 3.4.0   2017-04-21 local         
 withr         2.1.2   2018-03-15 CRAN (R 3.4.4)
 xtable        1.8-3   2018-08-29 CRAN (R 3.4.4)
 yaml          2.2.0   2018-07-25 CRAN (R 3.4.4)

【问题讨论】:

  • 我认为这是一个已知错误,已在开发版本中修复。

标签: r shiny dt


【解决方案1】:

确认从 GitHub 升级到 DT '0.5.2' 确实可以解决此问题。

【讨论】:

    猜你喜欢
    • 2020-09-30
    • 2019-10-25
    • 2019-01-08
    • 2018-08-09
    • 2016-10-25
    • 2020-09-18
    • 2020-05-07
    • 1970-01-01
    • 2017-12-09
    相关资源
    最近更新 更多