Элементы стиля, если они удовлетворяют условию, AngularJS

<div ng-if="item.attribute == 'attribute1'">
    doSomething
</div>

<button class="button button-block button-postive waves-effect waves-button waves-light">
    Button 1
</button>

Я хочу сделать так, чтобы если item.attribute == attribute1, то цвет кнопки - коралловый

.button.button-block, .button.button-full {

    background-color: coral;
    color: #fff;
}

Это возможно? Спасибо

3 ответа

Используйте нг-класс

ng-class="{ 'style': condition, 'style2' : condition2}"

В частности:

ng-class="{ 'button-block': item.attribute == 'attribute1'}"

https://docs.angularjs.org/api/ng/directive/ngClass

Вот еще один способ сделать это без объявления класса.

ng-style="item.attribute == 'attribute1' 
    && {'background-color':'red', 'color':'white'} || {'background-color':'blue', 'color':'white'}"

Ты можешь использовать ng-class чтобы сделать это.

<button ng-class="{'button-block': item.attribute==attribute1}">
Другие вопросы по тегам