# NOT RUN {
# Simple example
if(interactive()){
options(sps = list(mode='server')) # Change the mode to 'local' to see difference
ui <- fluidPage(
dynamicFile("server_file", "server"),
verbatimTextOutput("server_out")
)
server <- function(input,output,session){
file_server <- dynamicFileServer(input,session, id = "server_file")
output$server_out <- renderPrint({
file_server() # remember to use `()` for reactive value
})
}
shinyApp(ui = ui, server = server)
}
# To demostrate different modes in the same app, we can set options before the function.
# This is NOT recommended, you should stick with only one mode for the entire app.
if(interactive()){
spsOption("mode", "local")
local_ui <- dynamicFile("local_file", "local")
spsOption("mode", "server")
server_ui <- dynamicFile("server_file", "server")
ui <- fluidPage(
column(
6,
local_ui,
verbatimTextOutput("local_out")
),
column(
6,
server_ui,
verbatimTextOutput("server_out")
)
)
server <- function(input,output,session){
spsOption("mode", "local")
file_local <- dynamicFileServer(input,session, id = "local_file")
output$local_out <- renderPrint({
file_local() # remember to use `()` for reactive value
})
spsOption("mode", "server")
file_server <- dynamicFileServer(input,session, id = "server_file")
output$server_out <- renderPrint({
file_server()
})
}
shinyApp(ui = ui, server = server)
}
# }
Run the code above in your browser using DataLab