我想隐藏最左边列的+图标,并添加另一个图标。
当用户单击新图标时,我想以编程方式展开该特定行。
有gridApi.expandable.expandAllRows();
是否有一种方法可以扩展一行?
您可以使用toggleRowExpansion函数,将此属性添加到所需的元素中,该元素将触发此切换:
ng-click="grid.api.expandable.toggleRowExpansion(row.entity)"
如果你只是想把默认的+图标更改为一个不同的图标,你可以简单地覆盖expandableRowHeader的模板。
$templateCache.put('ui-grid/expandableRowHeader',
"<div class="ui-grid-row-header-cell ui-grid-expandable-buttons-cell"><div class="ui-grid-cell-contents"><i ng-class="{ 'ui-grid-icon-plus-squared' : !row.isExpanded, 'ui-grid-icon-minus-squared' : row.isExpanded }" ng-click="grid.api.expandable.toggleRowExpansion(row.entity)"></i></div></div>"
);
您可以更改 ng-class="{ 'ui-grid-icon-plus-squared' : !row.isExpanded, 'ui-grid-icon-minus-squared' : row.isExpanded }"
并将它们更改为您选择的其他图标