2014-05-06 2 views
1

У меня такая же проблема, как у Setting the group option dynamically not working in ng-grid 2.0.7.Настройка параметра группы динамически не работает в ng-grid 2.0.11

Короткий его (новичку здесь):

Я успешно удалось решить, как создать шаблон агрегации строк, нагрузку с сервера, а также указать группы (жестко закодированные в gridOptions) в группе по данные. Он работает красиво.

Мои группы, однако, являются динамическими, а также доступны с сервера. Когда я пытаюсь и динамически извлекаю их и устанавливаю их в gridOptions, они игнорируются. Если они жестко закодированы, они работают, и если они будут восстановлены и заполнены, мне будут представлены только негруппированные данные.

Я пробовал много вещей и провел больше дня на этом. Мне кажется, что что-то происходит с инициализацией нескольких внутренних мест, где хранится состояние, связанное с группами (config.groups, config.columnDefs, configGroups и т. Д. Являются нулевыми, если я ожидаю, что они не будут.

кто-нибудь еще наткнулся на эту проблему

Благодаря

Chris

ответ

2

объект сетки имеет свойствоGroupBy, которые вы можете использовать, чтобы агрегировать данные динамически Пример:..

HTML:

<body ng-controller="MyCtrl"> 
<button type="button" ng-click="changeGroupBy('name')">Group By Name</button> 
<button type="button" ng-click="changeGroupBy('age')">Group By Age</button> 
<div class="gridStyle" ng-grid="gridOptions"></div> 
</body> 

ЯШ:

app.controller('MyCtrl', function($scope) { 

    $scope.myData = [{"name": "Moroni", "age": 50}, 
       {"name": "Tiancum", "age": 53}, 
       {"name": "Jacob", "age": 27}, 
       {"name": "Nephi", "age": 54}, 
       {"name": "Alex", "age": 53}, 
       {"name": "Jhonny", "age": 22}, 
       {"name": "Ben", "age": 11}, 
       ], 

    $scope.gridOptions = { 
     data: 'myData' 
     }; 

    $scope.changeGroupBy = function (group) { 
    $scope.gridOptions.groupBy(group); 
    } 
}); 

Живой пример: http://plnkr.co/edit/A0q3c98s8K4h3n83MULE?p=preview