Ag-grid束太大

时间:2018-10-16 04:27:09

标签: angular bundle ag-grid enterprise

我正在使用Angular 6开发Web应用程序。我有一个Ag-grid企业版。 Ag-grid文档说,我们必须导入所有 ag-grid-angular ag-grid-community ag-grid-enterprise 与Ag-grid企业合作。

编译后,主捆绑包的总大小超过1.5 MB。因为 ag-grid-community 是694KB,而 ag-grid-enterprise 是230 KB:

Bundle size image

这是Ag-grid的正常行为吗?

我正在使用Ag-grid版本19.0.0和以下命令进行构建:

ng build --prod --aot --build-optimizer --vendor-chunk=true

2 个答案:

答案 0 :(得分:2)

这是我们所知道的,我们的积压中有

改进项目结构AG-1329(通过摇树)减小栅格束的大小

您可以在此处查看我们的管道:

https://www.ag-grid.com/ag-grid-pipeline/

请注意,鉴于它的复杂性,我们没有任何计划立即进行任何改进,但我们希望最终能够提供少量捆绑服务

如果您是客户,我建议您直接与ag-grid支持联系以获取更多信息

希望这会有所帮助

答案 1 :(得分:2)

AG-1329 Reduce grid bundle size 上面引用的 Alberto 项目已作为 2019 年 11 月发布的 ag-Grid v22 的一部分实施。这增加了通过模块导入 ag-Grid 的选项包含 ag-Grid 功能的不同方面。这允许您只为您实际使用的功能导入模块,从而减少 ag-Grid 包的大小。

详细介绍了这种方法,您可以导入的模块列表如下所示: https://www.ag-grid.com/documentation/javascript/modules/

我们使用 ag-Grid 构建了一个 Vue 项目,仅使用以下模块来说明这种方法: @ag-grid-community/core@ag-grid-community/infinite-row-model 请在此处下载此示例 Vue 项目: https://1drv.ms/u/s!AljcY8dewwaBnFPXn7V9eNjNM-wX?e=h8TnD0

与使用所有 ag-Grid 企业功能的完整 ag-Grid 包的 1.8MB 相比,上述示例项目的包大小仅为 1.0MB。

您可以通过为附加的 Vue 项目运行以下命令来验证生成的包大小: npm i && npm run build && npm run build:report

请按照此方法仅加载您用于减小包大小的 ag-Grid 模块。您可以在此处查看完整的模块列表: https://www.ag-grid.com/documentation/javascript/modules/