setupStorage {shinyStorePlus} | R Documentation |
Set up inputs for storage
Description
Set up the application and inputs to track and retrieve stores
Usage
setupStorage(
appId,
inputs = TRUE,
outputs = FALSE,
session = getDefaultReactiveDomain()
)
Arguments
appId |
your desired application id |
inputs |
choose whether to track all inputs or specific input variables |
outputs |
choose whether to track all outputs or specific output variables |
session |
current session to track |
Value
Embed within a page storage that allows input changes to be saved without slowing down the shiny application
Note
the inputs argument may be a TRUE
or FALSE
or a list of input ids. More examples are located at https://github.com/oobianom/aagarw30_shinyapps_to-shinyStorePlus
Examples
library(shiny)
library(shinyStorePlus)
# example 1 that tracks all inputs
if (interactive()) {
ui <- shiny::fluidPage(
titlePanel("EX1
shinyStorePlus All Inputs"),
initStore(),
sidebarLayout(
sidebarPanel(
sliderInput("nextgenshinyapps1",
"Number of bins:",
min = 1,
max = 200,
value = 150
),
textInput(
"caption",
"simple caption:",
"try editing - r2resize pkg"
),
numericInput("obs",
"sample observations:",
10,
min = 1, max = 100
)
),
mainPanel(
plotOutput("distPlot")
)
)
)
server <- function(input, output, session) {
output$distPlot <- renderPlot({
x <- faithful[, 2]
bins <- seq(min(x),
max(x),
length.out =
input$nextgenshinyapps1 + 1
)
hist(x,
breaks = bins,
col = "blue",
border = "gray"
)
})
# insert at the bottom
appid <- "application01"
setupStorage(
appId = appid,
inputs = TRUE
)
}
shiny::shinyApp(ui = ui, server = server)
}
# example 2 that tracks only 2 inputs
if (interactive()) {
ui <- shiny::fluidPage(
# init stores
initStore(),
titlePanel("Ex2:
shinyStorePlus Some Inputs"),
sidebarLayout(
sidebarPanel(
sliderInput("nextgenshinyapps1",
"Number of bins:",
min = 1,
max = 200,
value = 150
),
textInput(
"caption",
"simple caption:",
"summary, try editing"
),
numericInput("obs",
"sample observations:",
10,
min = 1, max = 100
)
),
mainPanel(
plotOutput("distPlot")
)
)
)
server <- function(input, output, session) {
output$distPlot <- renderPlot({
x <- faithful[, 2]
bins <- seq(min(x),
max(x),
length.out =
input$nextgenshinyapps1 + 1
)
hist(x,
breaks = bins,
col = "blue",
border = "gray"
)
})
# insert at the bottom !!!IMPORTANT
appid <- "application023"
setupStorage(
appId = appid,
inputs = list(
"nextgenshinyapps1",
"caption"
)
)
}
shiny::shinyApp(ui = ui, server = server)
}
[Package shinyStorePlus version 1.1 Index]