Как сделать пункт репитера работает вне ng-repeat

Я начал немного экспериментировать с AngularJS.
Теперь я думаю, что у меня есть проблема новичка с ng-class.
Я пытаюсь изменить цвет значка удивительного шрифта.

<div ng-controller="MyCtrl">
<i ng-class="{'test': item.active}" class="fa fa-bullhorn"></i>

У меня есть флажок и есть привязка через ng-модель к параметру

<div class="checkboxes">
  <form>
    <span ng-repeat="item in items">
      <input type="checkbox" ng-model="item.active"> {{item.name}}<br>
    </span>
  </form>
</div>
</div>

Когда я щелкаю флажок, область похожа:

[{"category":"category1","name":"Item1","active":true}]

Но класс i-элемента только «фа-фа-МегаФон».

Цвет в начале черный, тест класса css выглядит как

.test{
color: red;
}

Кто-нибудь может мне помочь?

2 ответа

  1. Существует ли этот значок внутри ng-repeat="item in items"? Если нет, «item»не существует в контексте значка.

  2. <i ng-class="{'test': item.active}" class="fa fa-bullhorn"></i>
    

    пункт.активный должен быть внутри репитера, как это

    <span ng-repeat="item in items">
       <input type="checkbox" ng-model="item.active"> {{item.name}} {{item.active}}
          <i ng-class="{'test': item.active}" class="fa fa-bullhorn"></i><br>
    </span>
    

    Посмотреть демо http://plnkr.co/edit/RcposHlL8uSLZs39IvyK