2
我server.R文件的開頭:對象不認可,除非手動創建
library(shiny)
source("scripts/0-Prepare-Inputs.R")
source("scripts/1-Analysis-Functions.R")
shinyServer(function(input, output) {})
如果我手動執行兩個輔助腳本,然後根據需要runApp()
作品。但是,如果我從清除環境開始,然後允許source()
命令運行腳本,那麼找不到在0-Prepare-Inputs.R
中創建的兩個對象。出現錯誤這樣:
> shiny::runApp()
Listening on http://127.0.0.1:5591
Error in lapply(obj, function(val) { : object 'sTableTypes' not found
sTableTypes
被以下面的方式內0-Prepare-Inputs.R
產生:
sTableTypes <- list(races = c("All", "White", "Black", "Hispanic", "NHWhite", "NHBlack"),
genders = c("Total", "Male", "Female"))
運行僅此行允許runApp()
才能正常工作。
我需要解決這個問題才能使用ShinyApps.io。
事情我已經試過這不起作用:
- 改變本地參數
source()
。 - 用所有源文件行替換
source()
命令。 - 在腳本文件中調用的函數中創建
sTableTypes
。 - 將
sTableTypes
的創建包裝在一個被稱爲反應對象的函數中。 - 將
sTableTypes
另存爲rObject並加載到源腳本和server.R的頂部。 - 使用超級賦值保存
sTableTypes
。使用assign()
並指定envir = .GlobalEnv
。 - 運行腳本,節約使用
save.image()
環境和加載使用load(..., envir = .GlobalEnv)
所有封裝均高達每update.packages()
日的環境,我目前運行v 3.1.1版。
'sTableTypes'在'server.r'或'ui.r'中使用或者兩者兼而有之? – 2014-10-28 20:06:15
哦!它用在兩者中,所以我必須在兩者中都使用它。現在工作。謝謝,約翰保羅。 – 2014-10-28 20:18:53
剛發佈了另一個建議作爲答案 – 2014-10-28 20:22:31