AG-Grid - 显示排序图标而不重新加载数据
Posted
技术标签:
【中文标题】AG-Grid - 显示排序图标而不重新加载数据【英文标题】:AG-Grid - Show sort icon without reloading data 【发布时间】:2021-11-08 19:20:42 【问题描述】:我有一个 Angular 应用程序,当我加载页面时,尚未定义列。 这些列是在我检索数据(已经排序)时定义的。 因此,如果我在排序列上应用状态(在数据初始化后),数据会再次刷新,我想避免这种情况。
有没有办法在不使用 AG-Grid 刷新数据的情况下显示排序图标?
更明确地说,这是我的角度代码:
getRows(params: any): void
//retrieve my data
this.myservice.getAll(params.currentPage, params.pageSize, params.sort).subscribe((data) =>
//send my datas to AG-Grid
params.successCallBack(data.results, data.totalItems);
if (params.currentPage == 0 && this.firstLoad)
//my datas contain the columns definition
this.initGrid(data.viewParams);
);
initGrid(viewParams: ViewParamsModel): void
this.firstLoad = false;
this.dataGrid.setColumnDefs(viewParams.columns);
//I try with this but it reloads my data
this.gridColumnApi.applyColumnState(
state: [
colId: 'name',
sort: 'asc',
],
);
【问题讨论】:
你能说明你尝试了什么以及发布一些代码的问题是什么。是否对每一列数据进行了排序,并且您希望显示默认为所有已排序列启用的排序图标。 @Mahi 我更新了我的帖子。我想显示一列的排序图标,但是当我设置列时,我不希望重新加载数据 【参考方案1】:在做this.dataGrid.setColumnDefs(viewParams.columns)
时
添加sort: 'desc'/'asc'
columnDefs: [
field: 'Column1',
sort: 'desc', // <====== add this
,
【讨论】:
这有帮助吗? 如果我这样做了,getRows 函数就会被召回。我想避免这种情况以上是关于AG-Grid - 显示排序图标而不重新加载数据的主要内容,如果未能解决你的问题,请参考以下文章