Привязка вычисленного значения объекта вложенных угловых данных

У меня есть таблица данных, список сотрудников и их заработная плата за каждый месяц года, где есть общая сумма за каждый месяц по всему персоналу, которая рассчитывается динамически (сумма зарплат, приходящихся на этот месяц).

Я пытаюсь сделать так, чтобы при изменении одного из окладов сотрудников за определенный месяц пересчитанная итоговая сумма за этот месяц переоценивалась, и поэтому angular обновит пользовательский интерфейс, но так как вычисляется это общее свойство, я не вижу пути "пометить его как грязный", так что угловой знает, чтобы переоценить?

1 ответ

Решение

Ваш сценарий звучит так, как будто он может использовать пользовательский фильтр.

Нечто близкое к:

пользовательский фильтр:

angular.module('myApp', []).filter('mySumFilter', function() {
  return function(items, param1, param2) {
    return //perform sum items object in case of necessary use params to narrow your operation
  };
});

и в вашем HTML

 <div> {{ salaryArray |mySumFilter:'salary': 2"}} </div>

Конечно, вы можете расширить его и выполнить действия, которые больше соответствуют потребностям вашего приложения.

Другие вопросы по тегам