在 R Shiny 应用程序中使用 includeHTML 以及 DT::dataTableOutput 会导致 JavaScript 错误

问题描述 投票:0回答:1

我发现,当我使用 includeHTML 包含从 Rmarkdown 文件生成的 HTML 文档,并在同一个 R Shiny 应用程序中使用 DT::dataTableOutput/renderDataTable 时,我收到 JavaScript 错误“Uncaught TypeError: Cannot read property '从 Shiny JS 代码中过滤“未定义”。 我发现这个错误发生在 Shiny 版本 0.13.0 和 0.14.1 中。

R-3.1.2> sessionInfo()
R version 3.1.2 (2014-10-31)
Platform: x86_64-unknown-linux-gnu (64-bit)

locale:
[1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
[5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C                 
[9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] DT_0.2       shiny_0.13.0

loaded via a namespace (and not attached):
[1] digest_0.6.8    htmltools_0.3.5 htmlwidgets_0.7 httpuv_1.3.3    magrittr_1.5    mime_0.3        R6_2.1.0        Rcpp_0.12.3    
[9] tools_3.1.2     xtable_1.7-4    yaml_2.1.13`  

我创建了一个 R Shiny 应用程序,在 GitHub 上演示了这一点:https://github.com/CliffordWollam/shiny_rmd_error

javascript r shiny r-markdown dt
1个回答
0
投票

我知道我迟到了 7 年零 11 个月,但没有将 js 加载到 html 脚本中,并且仅在闪亮的应用程序中使用 useShinyjs() 对我有用。看起来闪亮的 js 脚本和加载的 html 脚本与许多小部件不兼容。所以无论谁读它,只需创建一个不带 js 的 html 文件就可以了。

© www.soinside.com 2019 - 2024. All rights reserved.