R Shiny 必备包和 Github

3

我在Github上有一个R/Shiny项目,需要一些包,例如shinyjs、V8和dplyr。我在代码中指定了required(shinyjs)library(shinyjs)

在我的电脑上它可以正常工作,如果我从Github下载拷贝也可以运行,但如果我在另一台电脑上运行,则必须手动下载所需的软件包。

是否有一种方法可以让Rstudio在有人尝试运行应用程序时自动安装所需的软件包?


欢迎对我的回答进行反馈。 - Mike Wise
1个回答

2

这个做了那个。这里有一个函数: malonypatr的install_load函数

这些截图是来自RTVS,但我也在R-Studio中测试过。

library(shiny)

install_load <- function (package1, ...)  {   

  # convert arguments to vector
  packages <- c(package1, ...)

  # start loop to determine if each package is installed
  for(package in packages){

    # if package is installed locally, load
    if(package %in% rownames(installed.packages()))
      do.call('library', list(package))

    # if package is not installed locally, download, then load
    else {
      install.packages(package)
      do.call("library", list(package))
    }
  } 
}

install_load("shinyjs")

shinyApp(
  ui = fluidPage(
    useShinyjs(), # Set up shinyjs
    # Add a CSS class for red text colour
    inlineCSS(list(.red = "background: red")),
    actionButton("btn", "Click me"),
    p(id = "element", "Watch what happens to me")
  ),
  server = function(input, output) {
    observeEvent(input$btn, {
      # Change the following line for more examples
      toggleClass("element", "red")
    })
  }
)

加载中:

enter image description here 应用程序:

产出中:

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接