Развертывание файла R Markdown с блестящим компонентом - PullRequest
0 голосов
/ 07 мая 2019

Исходя из моего предыдущего вопроса, у меня возникают проблемы при создании DEPLOYABLE R файла с разметкой, в котором есть компонент Shiny, ПРОСТО, чтобы пользователь мог загрузить книгу Excel.
По сути, я хочу запустить код Python поверх данных, которые предоставляет пользователь.

Это не похоже на правильное развертывание в RConnect (время ожидания истекло):

---
output: html_document
---

library(dplyr)
library(miniUI)
library(shiny)
library(XLConnect)

launch_shiny <- function() {

  ui <- miniPage(
    gadgetTitleBar("Input Data"),
    miniContentPanel(
      fileInput(inputId = "my.file", label = NULL, 
                multiple = FALSE)
    )
  )

  server <- function(input, output, session) {
    wb <- reactive({
      new.file <- input$my.file
      loadWorkbook(
        filename = new.file$datapath,
        create = FALSE,
        password = NULL
      )
    })

    # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    df_lst <- reactive({
      # read all sheets into a list
      lapply(getSheets(wb()), 
             function(sheet){
               readWorksheet(object = wb(), 
                             sheet = sheet)
             })
    })
   # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    observeEvent(input$done, {
      # get the list of dfs from the app
      stopApp(c(df_lst())) 
    })

  }
  runGadget(ui, server)
  }

test <- launch_shiny()

Если я добавлю runtime: shiny в начале, произойдет сбой, поскольку runGadget использует runApp, который также используется shiny; однако мне нужно убедиться, что я могу вернуть переменную (в данном случае, список фреймов данных) в глобальную среду, поэтому я использовал stopApp.

Какие у меня варианты на данный момент?

...