./app 中的两个文件
library(shiny)
a <- 1
ui <- fluidPage(
textOutput("test")
)
server <- function(input, output) {
output$test <- renderText({
a
})
}
运行闪亮的应用程序
shiny::runApp("app")
Warning: Error in cat: argument 1 (type 'closure') cannot be handled by 'cat'
102: cat
98: transform
97: func
95: f
94: Reduce
85: do
84: hybrid_chain
83: renderFunc
82: output$test
1: shiny::runApp
如果我将代码存入文件,它就可以工作。这是什么原因呢?
library(shiny)
a <- 1
ui <- fluidPage(
textOutput("test")
)
server <- function(input, output) {
output$test <- renderText({
a
})
}
shinyApp(ui = ui, server = server)
问题是你没有全局文件来一起调用服务器和ui,你需要在全局中合并ui和服务器,为什么你的第一个应用程序不运行是因为
shiny::runApp()
是运行预先构建的应用程序,但我看到你的文件你没有任何shinyapp,而如果你想创建应用程序,你需要完成所有步骤并添加shinyApp()函数。因此第二个代码正在工作。
检查以下解决方案
ui.R 文件
a <- 1
ui <- fluidPage(
textOutput("test")
)
服务器.R
server <- function(input, output) {
output$test <- renderText({
a
})
}
全球.R
library(shiny)
shinyApp(ui = source("app/ui.R")$value, server = source("app/server.R")$value)