AG Grid 是一个功能齐全且高度可定制的JavaScript 数据网格。它提供出色的性能,没有第三方依赖项,并且支持反应, 角和维埃。
JavaScript 数据网格 | JavaScript 表
企业支持
错误报告
问题
贡献
工具和扩展
展示柜
观星者
定制组件
主题
自定义主题
安装
设置
种子项目
特征
示例
?概述
⚡️ 快速入门
?️ 定制
?社区
?支持
执照
AG Grid 有两个版本:社区版和企业版。
ag-grid-community
是免费的,可在 MIT 许可下使用,并附带 JavaScript 数据网格所需的所有核心功能,包括排序、过滤、分页、编辑、自定义组件、主题化等。
ag-grid-enterprise
可在商业许可下使用,除了我们工程团队的专门支持外,还具有高级功能,如集成图表、行分组、聚合、透视、主/详细信息、服务器端行模型和导出。
特征 | AG网格社区 | AG网格企业 |
---|---|---|
过滤 | ✅ | ✅(高级) |
排序 | ✅ | ✅ |
单元格编辑 | ✅ | ✅ |
CSV 导出 | ✅ | ✅ |
拖放 | ✅ | ✅ |
主题和样式 | ✅ | ✅ |
选择 | ✅ | ✅ |
无障碍 | ✅ | ✅ |
无限滚动 | ✅ | ✅ |
分页 | ✅ | ✅ |
服务器端数据 | ✅ | ✅(高级) |
定制组件 | ✅ | ✅ |
综合图表 | ❌ | ✅ |
范围选择 | ❌ | ✅ |
行分组和聚合 | ❌ | ✅ |
旋转 | ❌ | ✅ |
Excel导出 | ❌ | ✅ |
剪贴板操作 | ❌ | ✅ |
主/细节 | ❌ | ✅ |
树数据 | ❌ | ✅ |
栏目菜单 | ❌ | ✅ |
上下文菜单 | ❌ | ✅ |
工具面板 | ❌ | ✅ |
支持 | ❌ | ✅ |
ℹ️注意:
请访问定价页面进行完整比较。
我们创建了多个演示来展示 AG Grid 在不同用例中的丰富功能集。请在下面查看它们的实际操作,或在我们的演示页面上与它们互动。
具有实时更新和迷你图的财务数据示例:
现场演示 • 源代码
查看和管理产品的库存数据示例:
现场演示 • 源代码
显示分层员工数据的 HR 数据示例:
现场演示 • 源代码
AG Grid 易于设置 - 您所需要做的就是提供数据并定义列结构。请继续阅读普通 JavaScript 安装说明,或参阅我们的特定于框架的指南反应, 角和维埃。
$ npm install --save ag-grid-community
1. 提供容器
加载AG Grid库并创建一个容器div。 div 应该有一个高度,因为数据网格将填充父容器的大小:
<html lang="en"> <head> <!-- 包括 JavaScript 数据网格的所有 JS 和 CSS --> <script src="https://cdn.jsdelivr.net/npm/ag-grid-community /dist/ag-grid-community.min.js"></script> </head> <body> <!-- 您的数据网格容器 --> <div id="myGrid" style="height: 500px" ></div> </正文></html>
2. 实例化 JavaScript 数据网格
使用createGrid
在容器 div 内创建数据网格。
// 网格选项:包含所有数据网格配置 const gridOptions = {};// 用于创建数据网格的 Javascript 代码 const myGridElement = document.querySelector('#myGrid');agGrid.createGrid(myGridElement, gridOptions);
3. 定义行和列
// 网格选项:包含所有数据网格配置const gridOptions = { // 行数据:要显示的数据。 rowData: [ { make: 'Tesla', model: 'Model Y', 价格: 64950, electric: true }, { make: 'Ford', model: 'F-Series', 价格: 33850, electric: false }, { make: 'Toyota', model: 'Corolla', Price: 29600, electric: false }, ], // 列定义:定义列要显示。 columnDefs: [{ field: 'make' }, { field: 'model' }, { field: 'price' }, { field: 'electric' }],};
ℹ️注意:
有关使用 AG Grid 构建数据网格的更多信息,请参阅我们的文档。
我们还提供种子项目来帮助您开始使用常见配置:
环境 | 框架 | 套餐 | 模块 |
---|---|---|---|
创建 React 应用程序 (CRA) | 套餐 | 模块 | |
维特 | 套餐 | 模块 | |
Vite-TypeScript | 套餐 | 模块 | |
Webpack 5 - TypeScript | 套餐 | 模块 | |
Webpack 5 - JavaScript | 套餐 | 模块 | |
角度 CLI | 套餐 | 模块 | |
努克斯特 | 套餐 | 模块 | |
维特 | 套餐 | 模块 |
AG Grid 在外观和功能方面都是完全可定制的。可以通过多种方式自定义网格,我们提供了一系列工具来帮助创建这些自定义项。
您可以创建自己的自定义组件来自定义网格的行为。例如,您可以自定义单元格的呈现方式、值的编辑方式以及创建您自己的过滤器。
您可以向网格提供多种不同的组件类型,包括:
单元格组件:自定义单元格的内容。
标题组件:自定义列和列组的标题。
编辑组件:自定义单元格的编辑。
过滤器组件:用于出现在列菜单内的自定义列过滤器。
浮动过滤器:用于出现在列菜单内的自定义列浮动过滤器。
日期组件:自定义日期过滤器中的日期选择组件。
加载组件:使用服务器端行模型时自定义加载单元行。
叠加组件:自定义加载和无行叠加组件。
状态栏组件:用于自定义状态栏组件。
工具面板组件:用于自定义工具面板组件。
工具提示组件:用于自定义单元格工具提示组件。
菜单项组件:自定义列和上下文菜单中显示的菜单项。
要向网格提供自定义单元格渲染器和过滤器组件,请在gridOptions.columnDefs
属性中创建对组件的直接引用:
gridOptions = { columnDefs: [ { field: 'country', // 将组件添加到 cellRenderer 的列: CountryCellRenderer, // 您的自定义单元格组件 filter: CountryFilter, // 您的自定义过滤器组件 }, ],};
AG Grid 有 4 个主题,每个主题都有light
和dark
模式:
石英 | 材料 |
---|---|
阿尔卑斯山 | 巴勒姆 |
所有 AG Grid 主题都可以使用主题 API 进行自定义,或者您可以借助我们的主题生成器或 Figma 设计系统从头开始创建新主题。
AG Grid 拥有一个庞大而活跃的社区,他们创建了一个由第三方工具、扩展和实用程序组成的生态系统,可帮助您使用 AG Grid 构建下一个项目,无论您使用哪种语言或框架:
反应• 角度 • 打字稿• 维尤• Python • 苗条• SolidJS • 。网 • 生锈• 拉维尔
AG Grid 被全球几乎所有行业的 100,000 名开发人员使用。虽然这些项目大多数都是私有的,但我们还是精选了来自不同行业的开源项目,其中家喻户晓的公司都使用 AG Grid,包括摩根大通、 MongoDB和NASA 。请访问我们的社区展示页面以了解更多信息。
AG Grid 成立于 2016 年,受欢迎程度稳步上升,现已成为数据网格的市场领导者:
AG Grid Enterprise 客户可以通过 ZenDesk 获得专门支持,该支持由我们的工程团队监控。
如果您发现错误,请在此存储库的问题部分中报告。
使用ag-grid
标签在 StackOverflow 上查找类似问题。如果没有任何相关信息,请在那里发布新消息。请不要使用 GitHub issues 来提问。
AG Grid 由位于伦敦的一组开发人员开发。如果您想加入该团队,请将您的申请发送至 [email protected]。
ag-grid-community
根据MIT许可证获得许可。
ag-grid-enterprise
拥有商业许可证。
有关详细信息,请参阅许可证文件。
如果您已经完成了这一步,您可能会对我们的最新项目感兴趣:AG Charts - 世界上最好的 JavaScript 图表库。
最初是为了支持 AG Grid 中的集成图表而构建的,我们于 2018 年开源了该项目。自那时以来,看到受欢迎程度的稳步上升,我们决定投资于 AG Charts 的专用企业版本 ( ag-charts-enterprise
)除了我们对ag-charts-community
的持续支持。
关注我们,了解 AG Grid 的所有最新消息: