Я печатаю каждый элемент в моем массиве как абзац HTML, используя ng-repeat
.
<p ng-repeat="item in queries track by $index">{{ item }}</p>
Результат:
------------ title 1 --------------
content 1
------------ title 2 --------------
content 2
------------ title 3 --------------
content 3
------------ title 4 --------------
content 4
Проблема в том, что я не могу понять, как настраиваемые абзацы стиля (например, color:red;
).
вы добавляете атрибут ng-class
<p ng-repeat="item in queries track by $index"
ng-class={someCustomClass: item.title} >{{ item }}</p>
если выше не работает, то это должно
<p ng-repeat="item in queries track by $index"
ng-class={someCustomClass: Boolean(item.title) } >{{ item }}</p>
Если я ошибаюсь, идея состоит в том, чтобы предоставить объектный литерал для ng-класса, где ключ - это имя класса, а значение - это условие для применения класса
поэтому ng-class={ theClassNameToUse: TheCondition }
Если вы хотите использовать ng-class, вы можете использовать этот синтаксис:
ng-class="{'class-name': item.indexOf('title') >= 0}"
Или вы можете использовать ng-стиль следующим образом:
ng-style="setColor(item)"
С функцией:
$scope.setColor = function (item) {
if (item.indexOf("title") >= 0) {
return { color: red };
}
}
Что-то вроде этого будет делать:
<p ng-repeat="item in queries track by $index"
ng-attr-style="{{ item.indexOf('title') != -1 ? 'color: red' : '' }}">{{ item }}</p>
item.color