Я хочу связать выражение с атрибутом ng-disabled или ng-class и заставить его пересматривать каждый раз, когда изменяются свойства.Если у меня есть выражение в HTML, все это работает, но делает для ужасной читабельности:
<div ng-class="{disabled: $ctrl.form.$valid && $ctrl.foo && $ctrl.bar && $ctrl.goo }" >
bla bla bla
</div>
<button ng-disabled="$ctrl.form.$valid && $ctrl.foo && $ctrl.bar && $ctrl.goo" />
Я бы предпочел, чтобы в моем определении класса было свойство:
this.isValid = this.form.$valid && this.foo && this.bar && this.goo;
и привязка к этому свойству была бы такой:
<div ng-class="$ctrl.isValid" >
bla bla bla
</div>
<button ng-disabled="$ctrl.isValid" />
Если я сделаю последнее, выражение вычисляется только один раз, когда вычисляет контроллер.Есть ли способ сделать это?