如果在R中从脚本和服务器端调用,如何使变量成为全局变量?
让我们看看下面的例子如果在R中从脚本和服务器端调用,如何使变量成为全局变量?,r,shiny,global-variables,R,Shiny,Global Variables,让我们看看下面的例子 有两个文件:“setting.R”和“app.R”作为web应用程序使用,其中“setting.R”的名称为app和窗口标题。在加载应用程序期间,我必须在服务器端调用“settings.R”(仅以这种方式)。不幸的是,“settings.R”中的变量不是全局变量,我在闪亮的服务器日志“navbarPage中的错误(app_name…object'app_name'未找到)”中得到错误。使用“可以根据 我用它来定义自定义函数并加载要在ui.R和服务器中使用的数据。R谢谢!我编
有两个文件:“setting.R”和“app.R”作为web应用程序使用,其中“setting.R”的名称为app和窗口标题。在加载应用程序期间,我必须在服务器端调用“settings.R”(仅以这种方式)。不幸的是,“settings.R”中的变量不是全局变量,我在闪亮的服务器日志“navbarPage中的错误(app_name…object'app_name'未找到)”中得到错误。使用“可以根据
我用它来定义自定义函数并加载要在
ui.R
和服务器中使用的数据。R
谢谢!我编辑了这个问题。问题是我必须在“setting.R”中运行代码,这取决于服务器端定义的“app\u id”值。
settings.R
=====
if(app_id == "1") {
app_name <- "App 1"
window_title <- "Title 1"
}
if(app_id == "2") {
app_name <- "App 2"
window_title <- "Title 2"
}
app.R
=====
# Server
server <- function(input, output, session) {
output$uo_init_app <- renderUI({
app_id <- "1"
source("settings.R")
})
}
# UI
ui <- fluidPage(
navbarPage(app_name,
windowTitle = window_title,
fluidPage(
fluidRow(uiOutput("uo_init_app")),
fluidRow("App")
))
# Run app
shinyApp(ui, server)