r - 记录 Shiny 的应用程序

标签 r shiny roxygen2

有没有办法为 R Shiny 的应用程序生成文档?

没有文档就很难维护一个 Shiny 的应用程序。

似乎所有的测试/文档生态系统都是为 R 包结构创建的。也许我们可以为一个 Shiny 的应用程序模拟/扩展这种行为?

一个例子 :

响应式(Reactive)表达式通常是一个 R Shiny 元素,它可以包含复杂的数据结构。

   filtered_dat <- reactive({ 
      dx[ NAME == input$crr & TOU == input$tou & 
            PlotYear == input$year. & PlotMonth == input$season]
    })

为了提供更多的上下文,我在这里是在使用 R Shiny 构建完整的 Web 应用程序的上下文中。所有业务逻辑都包装在一个单独的包中。

对于测试 Ui,我认为它很复杂(例如可以使用 Rselenium),但是从 roxygen2 生成文档评论只是解析。拥有这样的工具应该很容易。

最佳答案

这是一个很好的问题。你如何用 Shiny 创建一个复杂清晰的 Web 应用程序?我认为组织一个庞大的项目是 Shiny 架构的弱点。

首先,Shiny 只在一个 html 文档中创建了一个网络。本文档分为多个层,要开发一个巨大的应用程序,您需要正确管理这些层。然而,这件事提出了一个重大问题,你如何组织代码?

嗯,在这里,有不同的方法可以做到这一点。事实上,你可以应用不同的方法,比如 Joe Cheng:

  • https://github.com/jcheng5/shiny-partials

  • 就我而言,在一个巨大的项目中,我实现了 MVC 模式,但将其调整为 Shiny 架构。

    关于r - 记录 Shiny 的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31305003/

    相关文章:

    r - 使用间隔来确定日期列是否在其他日期的向量内

    r:通过 dplyr 的 group_by 函数传递列列表

    r - 如何将 boxplot 的数字输出(带有 plot=FALSE)变成可用的东西?

    r - R 包中的双语(英语和葡萄牙语)文档

    Roxygen2 - 如何 @export 引用类生成器?

    r - 使用facet_wrap时如何减少facet标签之间的垂直间距?

    r - 让 shiny 的 `dateRangeInput` 的 `end` 总是大于 `start`

    css - R Shiny : change colour of individual check boxes in checkboxGroupInput

    r - Shiny:使用shinyjs来获取cookie数据

    r - 为什么 devtools 给我一个警告,@slot 需要名称和描述