如何在Angular UI Grid中获取分组列的数据

时间:2015-06-24 22:38:15

标签: javascript angularjs angular-ui-grid

如何在Angular UI Grid中获取分组列中所有行的数据?

例如,在官方Grouping Tutorial中,如何获取'公司'中的所有公司名称。柱。

我可以使用以下代码获取分组行的聚合值:

for (var i = 0, l = $scope.gridRows.length; i<l; i += 1){
    console.log($scope.gridRows[i].treeNode.aggregations[COLUMN_INDEX].value);
}

但不适用于公司&#39;列,因为它们不是该列的聚合值,我想要的是公司的所有名称。

enter image description here

提前感谢您的时间。

1 个答案:

答案 0 :(得分:2)

这里的关键知识是$scope.gridApi.grid.treeBase.tree保存渲染树,http://ui-grid.info/docs/#/api/ui.grid.treeBase.grid:treeBase

中描述了该树的结构

我认为你想要做的就是走这棵树并提取你想要的信息。

所以你真的想要导出那张树row.entity.company。我不清楚的是为什么这是有道理的 - 大概是你真的想要了解给定树节点下的特定公司,或目前可见的公司。

如果您想要可见的公司,您可以在走树时检查row.visible。如果您需要特定节点下的节点,则需要一种方法来了解所需的节点。如果您有一个您尝试提取的gridRow,则可以使用row.treeNode.children来获取该特定行下的树的子集。