Угловой фильтр работает, но вызывает «10 $ итераций дайджеста»

Я получаю данные от моего внутреннего сервера, структурированного так:

{
  name : "Mc Feast",
  owner :  "Mc Donalds"
}, 
{
  name : "Royale with cheese",
  owner :  "Mc Donalds"
}, 
{
  name : "Whopper",
  owner :  "Burger King"
}

На мой взгляд, я хотел бы «инвертировать» список. То есть Я хочу перечислить каждого владельца, и для этого владельца перечислить все гамбургеры. Я могу добиться этого с помощью функции underscorejsgroupBy в фильтре, который я затем использую сng-repeat директива:

JS:

app.filter("ownerGrouping", function() {
  return function(collection) {
    return _.groupBy(collection, function(item) {
      return item.owner;
    });
  }
 });

HTML:

<li ng-repeat="(owner, hamburgerList) in hamburgers | ownerGrouping">
  {{owner}}:  
  <ul>
    <li ng-repeat="burger in hamburgerList | orderBy : 'name'">{{burger.name}}</li>
  </ul>
</li>

Это работает, как и ожидалось, но я получаю огромную трассировку стека ошибок, когда список отображается с сообщением об ошибке "10 $ digest итераций достигнуты". Мне трудно понять, как мой код создает бесконечный цикл, который подразумевается в этом сообщении. Кто-нибудь знает почему?

Вот ссылка на планку с кодом:http://plnkr.co/edit/8kbVuWhOMlMojp0E5Qbs?p=preview

Ответы на вопрос(7)

Ваш ответ на вопрос