Угловые вложенные и отфильтрованные ng-повторные итоги

0

У меня есть список клиентов и заказы для каждого клиента. Это выглядит так:

  <ul>
    <li ng-repeat="customer in data.customes" | filter:customerFilterFn ">
     {{customer.name}} {{??? total should change depending on nested FILTERED data???}}
      <ul>
        <li ng-repeat="order in customer.orders" | filter:orderFilterFn ">
        {{order.id}} {{order.sum}}
        </li>
      </ul>  
    </li>
  </ul>

Как видите, оба списка фильтруются своими собственными функциями (для заказов это диапазон дат).

Каков наилучший подход для получения полной суммы для отфильтрованного набора заказов?

Теги:
angular-filters
ng-repeat

2 ответа

1

Вы можете использовать $index для директивы ng-repeat. Таким образом вы получаете каждое значение заказа, а затем вы можете сохранить переменную $scope для общей суммы клиента.

1

На самом деле вы можете использовать тот же orderFilterFn для фильтрации заказов до ng-repeat. Что-то вроде этого: http://codepen.io/anon/pen/xwgYZj

Если производительность очень важна, вы можете фильтровать заказы только один раз: http://codepen.io/anon/pen/bVgLjB

Ещё вопросы

Сообщество Overcoder
Наверх
Меню