What is @ag-grid-community/client-side-row-model?
@ag-grid-community/client-side-row-model is a powerful and flexible data grid component for JavaScript applications. It allows for efficient client-side data management, sorting, filtering, and grouping, making it ideal for handling large datasets in a performant manner.
What are @ag-grid-community/client-side-row-model's main functionalities?
Sorting
This feature allows users to sort data by clicking on the column headers. The code sample demonstrates how to enable sorting on the 'name' and 'age' columns.
const gridOptions = {
columnDefs: [
{ field: 'name', sortable: true },
{ field: 'age', sortable: true }
],
rowData: [
{ name: 'John', age: 25 },
{ name: 'Jane', age: 30 }
]
};
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
Filtering
This feature allows users to filter data based on column values. The code sample shows how to enable filtering on the 'name' and 'age' columns.
const gridOptions = {
columnDefs: [
{ field: 'name', filter: true },
{ field: 'age', filter: true }
],
rowData: [
{ name: 'John', age: 25 },
{ name: 'Jane', age: 30 }
]
};
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
Grouping
This feature allows users to group rows based on column values. The code sample demonstrates how to group rows by the 'country' column.
const gridOptions = {
columnDefs: [
{ field: 'name' },
{ field: 'age' },
{ field: 'country', rowGroup: true }
],
rowData: [
{ name: 'John', age: 25, country: 'USA' },
{ name: 'Jane', age: 30, country: 'UK' }
],
autoGroupColumnDef: {
headerName: 'Group',
field: 'country',
cellRenderer: 'agGroupCellRenderer',
cellRendererParams: {
checkbox: true
}
}
};
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
Other packages similar to @ag-grid-community/client-side-row-model
react-table
react-table is a lightweight, fast, and extendable data grid built for React. It provides hooks for managing table state and rendering, but it does not come with built-in features like sorting, filtering, and grouping out of the box. Instead, it allows developers to implement these features as needed, offering more flexibility but requiring more setup compared to @ag-grid-community/client-side-row-model.
handsontable
handsontable is a JavaScript/HTML5 data grid component with a spreadsheet-like interface. It offers a wide range of features including sorting, filtering, and grouping, similar to @ag-grid-community/client-side-row-model. However, handsontable is more focused on providing an Excel-like experience, which may be more suitable for applications requiring complex data manipulation and editing.
slickgrid
slickgrid is a JavaScript grid/spreadsheet component that is highly performant and capable of handling large datasets. It offers features like sorting, filtering, and grouping, similar to @ag-grid-community/client-side-row-model. However, slickgrid is more lightweight and may require additional customization to achieve the same level of functionality provided by @ag-grid-community/client-side-row-model.
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.
Client Side Row Model Module
This package is the feature module for the Client Side Row Model 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 check out our jobs board or send your application to info@ag-grid.com.
License
This project is licensed under the MIT license. See the LICENSE file for more info.