使用特定模块时ag-grid-enterprise的类型定义位置疑问
你遇到的情况是AG Grid的正常设计,不存在配置遗漏,也没有导入错误的类型定义,无需额外调整配置。
- 类型分层设计:AG Grid官方将所有公开接口类型(含企业版功能的类型定义)统一收敛在
@ag-grid-community/core包中发布,@ag-grid-enterprise/前缀的包仅存放企业版专属的功能实现、实体类,不会重复导出类型定义。 - 不会影响打包体积:你从
@ag-grid-community/core导入的IServerSideDatasource等内容仅为TypeScript类型定义,编译生产包时会被完全清除,不会引入额外代码,完全匹配你按需加载模块缩减应用体积的需求。
可直接遵循以下导入规则,完全符合AG Grid的官方规范:
- 所有接口、类型定义(无论属于社区版还是企业版功能)统一从
@ag-grid-community/core导入,例如IServerSideDatasource、GridApi、ColumnApi、GridOptions等- 仅企业版专属的实体类、功能模块从对应企业包导入,例如
LicenseManager从@ag-grid-enterprise/core导入,服务端行模型模块ServerSideRowModelModule从@ag-grid-enterprise/server-side-row-model导入
正确导入示例参考:
// 类型统一从社区核心包导入 import { GridApi, ColumnApi, IServerSideDatasource, GridOptions } from "@ag-grid-community/core"; // 企业版专属实体、功能模块从对应企业包导入 import { LicenseManager } from "@ag-grid-enterprise/core"; import { ServerSideRowModelModule } from "@ag-grid-enterprise/server-side-row-model";
内容的提问来源于stack exchange,提问作者Joe Nolan
相关产品推荐
相关产品推荐

