Я использую ng-class
для добавления классов CSS.Несмотря на то, что об этом много статей, я не могу добавить вызов функции с ng-class
.
. У меня есть следующее выражение.
ng-class="{'highlighter-row-Class' : (file.id == 1 && file.processed),
'bold-row-Class' : lastSelectedResumeId == file.attributes.name,
'failed-doc': !file.processed}"
Теперь можно добавить несколько классов.Однако я хочу добавить еще одно условие, которое будет вызывать метод и возвращать имя класса:
$scope.getclass = function() {
return 'someclass';
}
Моя попытка использовала этот метод в ng-class
после последнего условия, но это не былоза работой.Итак, может кто-нибудь сказать мне, как я могу сделать это правильно с ng-class
?
Еще одна попытка (после предложений):
ng-class="[{'highlighter-row-Class' : (file.id == 1 && file.processed),
'bold-row-Class' : lastSelectedResumeId == file.attributes.name,
'failed-doc': !file.processed }, getClassForHrms(file)]"
Функция:
$scope.getClassForHrms = function (file) {
if (file.attributes.hrmsMandatoryFieldsMissing) {
return "missingfieldspresent";
} else if (file.attributes.isDocumentDuplicated) {
return "documentduplicate";
} else if (!file.attributes.isDocumentDuplicated) {
return "documentuploadfailed";
}
};
Используемый CSS:
.missingfieldspresent {
color: red;
}
.documentduplicate {
color: purple;
}
.documentuploadfailed {
color: deeppink;
}
Это то, что в результате HTML отображает
<tr ng-repeat="file in processResumeFiles" ng-class="[{'highlighter-row-Class' : (file.id == 1 && file.processed),
'bold-row-Class' : lastSelectedResumeId == file.attributes.name,
'failed-doc': !file.processed }, getClassForHrms(file)]"
class="ng-scope [object Object] documentduplicate">