gpt4 book ai didi

angularjs - ng-grid 访问排序后的数组数据

转载 作者:行者123 更新时间:2023-12-01 05:13:52 25 4
gpt4 key购买 nike

我需要在对表进行排序后访问已排序数据的数组,因为原始数据没有变化。

有一个gridOptions.ngGrid.filteredData但没有 gridOptions.ngGrid.sortedData
如何访问已排序的数组?

最佳答案

除了改变网格中数据的外观之外,您还可以对数据本身进行重新排序……如果您使用 Underscore.js ,可以添加功能,修改headerCellTemplate , 如下所示。

修改 headerCellTemplate :

<div class="ngHeaderSortColumn {{col.headerClass}}" ng-style="{'cursor': col.cursor}" ng-class="{ 'ngSorted': !noSortVisible }">
<div ng-click="mySort(col.displayName)" ng-class="'colt' + col.index" class="ngHeaderText">{{col.displayName}}</div>
<div class="ngSortButtonDown" ng-show="col.showSortButtonDown()"></div>
<div class="ngSortButtonUp" ng-show="col.showSortButtonUp()"></div>
<div class="ngSortPriority">{{col.sortPriority}}</div>
<div ng-class="{ ngPinnedIcon: col.pinned, ngUnPinnedIcon: !col.pinned }" ng-click="togglePin(col)" ng-show="col.pinnable"></div>
</div>
<div ng-show="col.resizable" class="ngHeaderGrip" ng-click="col.gripClick($event)" ng-mousedown="col.gripOnMouseDown($event)"></div>

新功能:
$scope.mySort = function (field) {
$scope.gridOptions.data = _.sortBy($scope.gridOptions.data, function (item) {return item.field});
};

我对默认模板所做的唯一更改是在第二行更改了 ng-click 的值。来自 col.sort($event)mySort(col.displayName)

关于angularjs - ng-grid 访问排序后的数组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22442011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com