#' @title csvDownloadUI
#' @description Shiny module to download dataframe as CSV file.
#'
#' @param id Namespace of module.
#' @param label Button label. Defaults to Download
#'
#' @return Returns a tagList.
#' @export
csvDownloadUI <- function(id, label = 'Download csv') {
ns <- shiny::NS(id)
ui_input <- shiny::tagList()
ui_input$download <- shiny::downloadButton(outputId = ns('download'),
label = label)
ui_input
}
#' @title csvDownload
#' @description Module server function to download dataframe as CSV file.
#'
#' @param input Input
#' @param output Output
#' @param session Session
#' @param df Dataframe to download.
#' @param filename Name of downloaded file
#'
#' @return Does not return a value.
#' @export
csvDownload <- function(input, output, session, df,
filename = paste0('data_', Sys.Date(), '.csv')) {
output$download <- shiny::downloadHandler(
filename = function() {filename},
content = function(file) {
write.csv(df, file, row.names = FALSE)
})
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.