These functions show and remove notifications in a Shiny application.
showNotification( ui, action =NULL, duration =5, closeButton =TRUE, id =NULL, type = c("default","message","warning","error"), session = getDefaultReactiveDomain())removeNotification(id, session = getDefaultReactiveDomain())
Arguments
ui: Content of message.
action: Message content that represents an action. For example, this could be a link that the user can click on. This is separate from ui
so customized layouts can handle the main notification content separately from action content.
duration: Number of seconds to display the message before it disappears. Use NULL to make the message not automatically disappear.
closeButton: If TRUE, display a button which will make the notification disappear when clicked. If FALSE do not display.
id: A unique identifier for the notification.
id is optional for showNotification(): Shiny will automatically create one if needed. If you do supply it, Shiny will update an existing notification if it exists, otherwise it will create a new one.
id is required for removeNotification().
type: A string which controls the color of the notification. One of "default" (gray), "message" (blue), "warning" (yellow), or "error" (red).
session: Session object to send notification to.
Returns
An ID for the notification.
Examples
## Only run examples in interactive R sessionsif(interactive()){# Show a message when button is clickedshinyApp( ui = fluidPage( actionButton("show","Show")), server =function(input, output){ observeEvent(input$show,{ showNotification("Message text", action = a(href ="javascript:location.reload();","Reload page"))})})# App with show and remove buttonsshinyApp( ui = fluidPage( actionButton("show","Show"), actionButton("remove","Remove")), server =function(input, output){# A queue of notification IDs ids <- character(0)# A counter n <-0 observeEvent(input$show,{# Save the ID for removal later id <- showNotification(paste("Message", n), duration =NULL) ids <<- c(ids, id) n <<- n +1}) observeEvent(input$remove,{if(length(ids)>0) removeNotification(ids[1]) ids <<- ids[-1]})})}