@equinor/fusion-framework-react-ag-grid

中文文档
37.1.5发布于 2026/11/12ISCTypeScriptES Module近 30 天下载 4791

使用 AG 网格的聚合模块

中文使用文档
文档目录20 节
  1. 谁应该使用这个
  2. 快速启动
  3. 安装
  4. 启用模块
  5. 显示网格
  6. 关键概念
  7. API 表面
  8. 主要入口点 @equinor/fusion-framework-react-ag-grid (中文(简体) )
  9. 社区入口 @equinor/fusion-framework-react-ag-grid/community (中文(…
  10. 企业入口 @equinor/fusion-framework-react-ag-grid/enterprise (中文…
  11. 反应出入口( R) @equinor/fusion-framework-react-ag-grid/react (中文…
  12. 主题入站点( E) @equinor/fusion-framework-react-ag-grid/themes (中…
  13. 常见模式
  14. 自定义全局主题
  15. 每个网格实例覆盖主题
  16. 使用 AG 网格集成图
  17. 测试
  18. 更新指南
  19. 升级到 v35
  20. 从v32升级到v33

@ equinor/ 聚变框架- 反应- ag- grid

反应集成 AG 网格 在内部 融合框架 应用.

这个软件包提供了预配置的AG Grid设置,与Equinor设计系统的主题,许可证管理,模块注册——因此应用程序中的每个网格都共享了盒子中一致的样式和配置.

谁应该使用这个

任何Fusion Framework React 应用程序都需要一个数据网格,其中包含排序,过滤,分组,内置编辑,或Excel导出. 如果你在Fusion框架之外建立一个独立应用程序,请使用 ag-grid-react 直接换成.

快速启动

安装

pnpm add @equinor/fusion-framework-react-ag-grid

启用模块

在应用程序配置中注册 AG 网格模块 :

import { enableAgGrid } from '@equinor/fusion-framework-react-ag-grid';

export const configure = (configurator) => {
  enableAgGrid(configurator);
};

显示网格

import { AgGridReact } from '@equinor/fusion-framework-react-ag-grid';
import { useTheme } from '@equinor/fusion-framework-react-ag-grid';
import type { ColDef } from '@equinor/fusion-framework-react-ag-grid/community';

const columns: ColDef[] = [
  { field: 'name' },
  { field: 'age', filter: 'agNumberColumnFilter' },
];

const MyGrid = ({ rows }) => {
  const theme = useTheme();
  return <AgGridReact theme={theme} rowData={rows} columnDefs={columns} />;
};

[大 由于AG Grid 类型是从此套件再导出, TypeScript 可能有 很难解决他们。 设定 "moduleResolution": "bundler" 在你身边 tsconfig.json 解决类型解析问题.

关键概念

概念说明
enableAgGrid注册 AG 网格融合模块。 为主题、许可证和模块定制接受可选的构建者调用.
useTheme返回活动的 AG 网格的反应钩子 Theme 从模块系统.
fusionThemeAG Grid Alpine上方应用 Equinor 字体和 EDS 口音颜色的默认主题.
createTheme为完全自定义样式创建新的空白 AG 网格主题.

API 表面

主要入口点@equinor/fusion-framework-react-ag-grid(中文(简体) )

导出仁爱说明
AgGridReact构成部分用于渲染 AG Grid 实例的回放包装 .
AgGridReactProps类型接受的主张 AgGridReact。 。 。 .
enableAgGrid函数在聚合配置器上注册 AG 网格模块.
IAgGridProvider接口只读提供者曝光已解决的许可密钥和主题 .
fusionTheme常数预建的基于EDS的AG Grid主题.
createTheme函数创建空白的 AG 网格主题.
Theme类型AG Grid主题类型.

社区入口@equinor/fusion-framework-react-ag-grid/community(中文(简体) )

再出口一切从 ag-grid-community ——列定义,单元格渲染器,行模型,事件,以及公用设施.

企业入口@equinor/fusion-framework-react-ag-grid/enterprise(中文(简体) )

再出口一切从 ag-grid-enterprise ——行组,树数据,服务器侧行模型,Excel导出,集成图等. 需要有效的许可密钥 .

反应出入口( R)@equinor/fusion-framework-react-ag-grid/react(中文(简体) )

再出口一切从 ag-grid-react ——部件,道具,钩子等公用事业.

主题入站点( E)@equinor/fusion-framework-react-ag-grid/themes(中文(简体) )

导出仁爱说明
fusionTheme常数默认融合/ EDS AG Grid 主题 .
createTheme函数创建空白主题.
createThemeFromTheme函数克隆一个跨模块边界的主题( 由于 AG Grid 需要) instanceof 检查).
Theme类型AG Grid主题类型.

常见模式

自定义全局主题

模块配置时覆盖主题参数 :

enableAgGrid(configurator, (builder) => {
  builder.setTheme((theme) => {
    return theme.withParams({
      backgroundColor: '#1f2836',
      browserColorScheme: 'dark',
      foregroundColor: '#FFF',
      headerFontSize: 14,
    });
  });
});

[TIP] AG网格有一个 主题构建器 页:1 预览和生成自定义主题参数.

每个网格实例覆盖主题

使用 useTheme 以获取基准主题,然后为特定网格自定义:

import { useTheme } from '@equinor/fusion-framework-react-ag-grid';
import { AgGridReact } from '@equinor/fusion-framework-react-ag-grid';
import { useMemo, useState } from 'react';

const MyComponent = () => {
  const baseTheme = useTheme();
  const [hasError, setHasError] = useState(false);

  const theme = useMemo(
    () => baseTheme.withParams({ cellTextColor: hasError ? '#FF0000' : undefined }),
    [baseTheme, hasError],
  );

  return <AgGridReact theme={theme} /* ...other props */ />;
};

使用 AG 网格集成图

安装单独的图表包并注册 IntegratedChartsModule数字 :

pnpm add @equinor/fusion-framework-react-ag-charts
import { IntegratedChartsModule } from '@equinor/fusion-framework-react-ag-grid/enterprise';
import { AgChartsEnterpriseModule } from '@equinor/fusion-framework-react-ag-charts/enterprise';

enableAgGrid(configurator, (builder) => {
  builder.addModule(IntegratedChartsModule.with(AgChartsEnterpriseModule));
});

[注] AG Charts是自v35起的独立包. 见 @equinor/核聚变-框架-反应-ag-图 用于独立的图表使用.

测试

没有许可证密钥, AG Grid Entertainment 登录一个"License Key Not found" 横幅通过 console.error 每个网格挂起。 打电话 suppressAgGridLicenseBanner 一次从测试设置文件中过滤到这个横幅:

// src/test/setupTests.ts
import { suppressAgGridLicenseBanner } from '@equinor/fusion-framework-react-ag-grid/testing';

suppressAgGridLicenseBanner();

更新指南

升级到 v35

AG 图表已分离: 图表功能已移动到 @equinor/fusion-framework-react-ag-charts。 。 。 .

// Before (v34)
import { AgChartsEnterpriseModule } from '@equinor/fusion-framework-react-ag-grid/enterprise';

// After (v35)
import { IntegratedChartsModule } from '@equinor/fusion-framework-react-ag-grid/enterprise';
import { AgChartsEnterpriseModule } from '@equinor/fusion-framework-react-ag-charts/enterprise';

enableAgGrid(configurator, (builder) => {
  builder.addModule(IntegratedChartsModule.with(AgChartsEnterpriseModule));
});

同伴依赖关系: 更新到 ag-grid-community 财务报告和审定财务报表 ag-grid-enterprise >= 35.1.0.

从v32升级到v33

删除以前所有引用 @equinor/fusion-react-ag-grid-styles, (中文(简体) ), @ag-grid-community/*,以及 @ag-grid-enterprise/* 从您的项目 依赖性。 仅 @equinor/fusion-framework-react-ag-grid 应安装.

版本与发布记录

@equinor/fusion-framework-react-ag-grid 共发布 66 个版本,首次发布于 2025/02/11;过去 12 个月发布了 30 个版本。

版本发布日期距今
37.1.5latest2026/11/121 天前
37.1.5-next.1next2026/11/112 天前
37.1.5-next.02026/10/2816 天前
37.1.42026/10/1727 天前
37.1.4-trusted-publishing-20261015-9dfe7602cd2a49a8a9df00d62c26e7304a82a85atrusted-publishing-202610152026/10/1629 天前
37.1.32026/10/121 个月前

其他发布通道:apploader → 33.2.7-apploader-be21a6b60eb13eee8bf869e75002d8634e9c50a9,preview → 34.2.3-preview.3,cli-search-index → 34.2.4-cli-search-index.0,msal-v5 → 34.4.2-msal-v5.0,trusted-publishing-20261015 → 37.1.4-trusted-publishing-20261015-9dfe7602cd2a49a8a9df00d62c26e7304a82a85a,next → 37.1.5-next.1。

关于 @equinor/fusion-framework-react-ag-grid 的常见问题

@equinor/fusion-framework-react-ag-grid 是什么?

使用 AG 网格的聚合模块

如何安装 @equinor/fusion-framework-react-ag-grid?

在项目目录运行 npm install @equinor/fusion-framework-react-ag-grid,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^18.0.0 || ^19.0.0)、react-dom(^18.0.0 || ^19.0.0)、@equinor/fusion-framework-react-module(^4.0.7)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@equinor/fusion-framework-react-ag-grid 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@equinor/fusion-framework-react-ag-grid 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@equinor/fusion-framework-react-ag-grid 可以商用吗?

@equinor/fusion-framework-react-ag-grid 使用 ISC 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@equinor/fusion-framework-react-ag-grid 的下载量有多少?

根据 npm 官方下载统计,@equinor/fusion-framework-react-ag-grid 在 2026/10/14 – 2026/11/12 这 30 天内被下载 4,791 次,日均约 160 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@equinor/fusion-framework-react-ag-grid 还在维护吗?

最新版本 37.1.5 发布于 2026/11/12(1 天前);至今共发布 66 个版本,其中过去 12 个月发布了 30 个;首次发布于 2025/02/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。