【发布时间】:2015-05-28 04:10:05
【问题描述】:
我有一个简单的闪亮应用程序,我正在测试 SHINY pro,我想像文档建议的那样访问 session$user:
http://rstudio.github.io/shiny-server/latest/#flat-file-authentication。请参阅显示此代码的第 4.1 节:
shinyServer(function(input, output, session) {
output$username <- reactive({
session$user
})
该代码有效,但我需要通过 GetUser() 函数访问 ui.r 文件中的 session$user
这是我的 ui.r 文件:
library(shiny)
shinyUI(fluidPage(
textOutput("HeaderTime"),
sidebarPanel(
selectInput("t", "t:", as.character(GetUser()), selected = as.character(GetUser())), width = 2
),
mainPanel(
tabsetPanel(
tabPanel("test",
dataTableOutput("Table"),
plotOutput("Plot"),
# verbatimTextOutput("Txt"),
width = 12
)
)
)
))
您可以在 selectInput 中看到 GetUser() 函数。我已将 GetUser() 放在我的 server.R 文件中:
shinyServer(function(input, output, session) {
GetUser<-reactive({
return(session$user)
})
output$Plot<-renderPlot({
hist(rnorm(1000))
})
output$Table<- renderDataTable({
data.frame(a=c(1,2,3,4),b = c("TEst","test","test","test"))
})
})
当我运行这段代码时,我得到了错误:
Error in GetUser() : argument "session" is missing, with no default
知道如何允许 ui.r 访问 server.r 文件中的 GetUser() 以便在 ui 中使用 session$user 吗?
这是运行项目的代码:
library(rJava)
library(shiny)
install.packages("shiny")
runApp("C://me/pathtoproject")
谢谢。
【问题讨论】:
标签: r shiny shiny-server