What is @ag-grid-community/csv-export?
@ag-grid-community/csv-export is a package that provides functionality to export data from AG Grid to CSV format. It is part of the AG Grid Community edition and allows users to easily export their grid data for use in other applications or for reporting purposes.
What are @ag-grid-community/csv-export's main functionalities?
Basic CSV Export
This feature allows you to export the data displayed in the AG Grid to a CSV file. The code sample demonstrates how to set up the grid options and call the exportDataAsCsv method to perform the export.
const { GridOptions, ModuleRegistry } = require('@ag-grid-community/core');
const { CsvExportModule } = require('@ag-grid-community/csv-export');
ModuleRegistry.registerModules([CsvExportModule]);
const gridOptions = {
columnDefs: [
{ field: 'make' },
{ field: 'model' },
{ field: 'price' }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
]
};
gridOptions.api.exportDataAsCsv();
Customizing CSV Export
This feature allows you to customize the CSV export parameters such as the file name and column separator. The code sample shows how to set the defaultCsvExportParams to customize the export.
const { GridOptions, ModuleRegistry } = require('@ag-grid-community/core');
const { CsvExportModule } = require('@ag-grid-community/csv-export');
ModuleRegistry.registerModules([CsvExportModule]);
const gridOptions = {
columnDefs: [
{ field: 'make' },
{ field: 'model' },
{ field: 'price' }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
],
defaultCsvExportParams: {
fileName: 'custom_export.csv',
columnSeparator: ';'
}
};
gridOptions.api.exportDataAsCsv();
Exporting Selected Rows
This feature allows you to export only the selected rows from the AG Grid to a CSV file. The code sample demonstrates how to select all rows and then export only the selected rows using the exportDataAsCsv method with the onlySelected parameter.
const { GridOptions, ModuleRegistry } = require('@ag-grid-community/core');
const { CsvExportModule } = require('@ag-grid-community/csv-export');
ModuleRegistry.registerModules([CsvExportModule]);
const gridOptions = {
columnDefs: [
{ field: 'make' },
{ field: 'model' },
{ field: 'price' }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
],
rowSelection: 'multiple'
};
gridOptions.api.selectAll();
gridOptions.api.exportDataAsCsv({ onlySelected: true });
Other packages similar to @ag-grid-community/csv-export
json2csv
json2csv is a popular package for converting JSON data to CSV format. It provides a simple API for transforming JSON objects into CSV strings or files. Compared to @ag-grid-community/csv-export, json2csv is more general-purpose and can be used with any JSON data, not just data from AG Grid.
papaparse
PapaParse is a powerful CSV parser and writer for JavaScript. It can handle large files and provides various configuration options for parsing and stringifying CSV data. While PapaParse is more focused on parsing CSV data, it also offers CSV export functionality, making it a versatile alternative to @ag-grid-community/csv-export.
csv-writer
csv-writer is a simple and easy-to-use library for writing CSV files in Node.js. It allows you to create CSV files from arrays of objects or arrays of arrays. Compared to @ag-grid-community/csv-export, csv-writer is more lightweight and focused solely on writing CSV files, without any dependencies on a grid or table component.
AG Grid
AG Grid is a fully-featured and highly customizable JavaScript data grid.
It delivers outstanding performance, has no third-party dependencies and integrates smoothly with all major JavaScript frameworks.
Check out the developer documentation for a complete list of features or visit our official docs for tutorials and feature demos.
CSV Export Module
This package is the feature module for the CSV Export feature to be used when working with AG Grid module setup in order to minimise your bundle size.
For more details on working with AG Grid modules visit our modules documentation.
Issue Reporting
If you have found a bug, please report it in this repository's issues section. If you're using the Enterprise version, please use the private ticketing system to do that.
Asking Questions
Look for similar problems on StackOverflow using the ag-grid
tag. If nothing seems related, post a new message there. Please do not use GitHub issues to ask questions.
Contributing
AG Grid is developed by a team of co-located developers in London. If you want to join the team send your application to info@ag-grid.com.
License
This project is licensed under the MIT license. See the LICENSE file for more info.