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.