
Research
Security News
Lazarus Strikes npm Again with New Wave of Malicious Packages
The Socket Research Team has discovered six new malicious npm packages linked to North Korea’s Lazarus Group, designed to steal credentials and deploy backdoors.
ag-grid-community
Advanced tools
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
ag-grid-community is a feature-rich data grid designed for the major JavaScript frameworks. It provides a highly customizable and performant grid component that can handle large datasets and complex data operations.
Basic Grid Setup
This code sets up a basic grid with three columns (Make, Model, Price) and three rows of data. It demonstrates how to define column definitions and row data for the grid.
const gridOptions = {
columnDefs: [
{ headerName: 'Make', field: 'make' },
{ headerName: 'Model', field: 'model' },
{ headerName: 'Price', field: 'price' }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
]
};
// Assuming you have a div with id 'myGrid'
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
Sorting
This code adds sorting functionality to the grid. By setting the 'sortable' property to true in the column definitions, users can sort the data by clicking on the column headers.
const gridOptions = {
columnDefs: [
{ headerName: 'Make', field: 'make', sortable: true },
{ headerName: 'Model', field: 'model', sortable: true },
{ headerName: 'Price', field: 'price', sortable: true }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
]
};
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
Filtering
This code adds filtering functionality to the grid. By setting the 'filter' property to true in the column definitions, users can filter the data using the filter input boxes that appear in the column headers.
const gridOptions = {
columnDefs: [
{ headerName: 'Make', field: 'make', filter: true },
{ headerName: 'Model', field: 'model', filter: true },
{ headerName: 'Price', field: 'price', filter: true }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
]
};
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
Pagination
This code adds pagination to the grid. By setting the 'pagination' property to true and defining 'paginationPageSize', the grid will display a limited number of rows per page and provide pagination controls.
const gridOptions = {
pagination: true,
paginationPageSize: 10,
columnDefs: [
{ headerName: 'Make', field: 'make' },
{ headerName: 'Model', field: 'model' },
{ headerName: 'Price', field: 'price' }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 },
// Add more rows as needed
]
};
new agGrid.Grid(document.getElementById('myGrid'), gridOptions);
react-table is a lightweight, fast, and extendable data grid built for React. It focuses on providing a simple and flexible API for building tables. Compared to ag-grid-community, react-table is more lightweight and easier to customize but may lack some of the advanced features and performance optimizations.
handsontable is a JavaScript/HTML5 data grid component with Excel-like appearance and behavior. It is highly customizable and supports a wide range of features including data validation, sorting, filtering, and more. Compared to ag-grid-community, handsontable offers a more Excel-like experience but may have a steeper learning curve.
slickgrid is a JavaScript grid/spreadsheet component that is highly performant and capable of handling large datasets. It offers a range of features including virtual scrolling, column resizing, and more. Compared to ag-grid-community, slickgrid is known for its performance with large datasets but may require more effort to integrate and customize.
Module | Info |
---|---|
ag-grid-community | |
ag-grid-enterprise |
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.
Here's how our grid looks with multiple filters and grouping enabled:
In addition to the standard set of features you'd expect from any grid:
Here are some of the features that make AG Grid stand out:
* The features marked with an asterisk are available in the Enterprise version only.
Check out the developer documentation for a complete list of features or visit our official docs for tutorials and feature demos.
$ npm install --save ag-grid-community
<div id="myGrid" style="height: 150px; width: 600px" class="ag-theme-alpine"></div>
import { Grid } from 'ag-grid-community';
import 'ag-grid-community/styles//ag-grid.css';
import 'ag-grid-community/styles//ag-theme-alpine.css';
var gridOptions = {
columnDefs: [
{ headerName: 'Make', field: 'make' },
{ headerName: 'Model', field: 'model' },
{ headerName: 'Price', field: 'price' }
],
rowData: [
{ make: 'Toyota', model: 'Celica', price: 35000 },
{ make: 'Ford', model: 'Mondeo', price: 32000 },
{ make: 'Porsche', model: 'Boxster', price: 72000 }
]
};
var eGridDiv = document.querySelector('#myGrid');
new Grid(eGridDiv, this.gridOptions);
For more information on how to integrate the grid into your project see Building AG Grid Applications.
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.
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.
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.
This project is licensed under the MIT license. See the LICENSE file for more info.
FAQs
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
The npm package ag-grid-community receives a total of 748,534 weekly downloads. As such, ag-grid-community popularity was classified as popular.
We found that ag-grid-community demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
The Socket Research Team has discovered six new malicious npm packages linked to North Korea’s Lazarus Group, designed to steal credentials and deploy backdoors.
Security News
Socket CEO Feross Aboukhadijeh discusses the open web, open source security, and how Socket tackles software supply chain attacks on The Pair Program podcast.
Security News
Opengrep continues building momentum with the alpha release of its Playground tool, demonstrating the project's rapid evolution just two months after its initial launch.