Ответ 1
Просто сделайте это
<span title="{{ item.status ? 'create' : 'delete'}}" class="check-{{ item.status }}"></span>
Как я могу условно применить заголовок в angular.js
<span title=" Create " class="check-{{ item.status }}"></span>
Если статус равен true, тогда я хочу показать заголовок как Create else Delete.
Для класса я можно применить такие условия, как
ng-class="{true: 'active'}[isActive]
и в контроллере
$scope.isActive = true;
или
$scope.isActive = false;
Как я могу сделать то же самое в заголовке?
Я пробовал что-то вроде:
title = " item.status = true | 'create' "
Просто сделайте это
<span title="{{ item.status ? 'create' : 'delete'}}" class="check-{{ item.status }}"></span>
У меня была такая же проблема, но я хотел, чтобы мое решение было более динамичным. Вот что я придумал:
directives.directive('myStatus', function() {
var getStatusClass = function (currentStatus) {
switch (currentStatus) {
case 'U':
//a defined css class
return "unassigned-background";
...
default :
return "error";
}
};
var getStatusTitle = function (currentStatus) {
switch (currentStatus) {
case 'U':
//some string you want to use
return "Unassigned. Inactive";
...
default :
return "error";
}
};
return {
restrict: 'E',
template: '<span>{{status}}</span>',
scope: {
status: '@status' //<-- take note that this is a one-way binding!
},
link : function (scope, element, attributes) {
element.addClass(getTerminalStatusClass(scope.status));
element.attr("title", getTerminalStatusTitle(scope.status));
}
}});
Затем вы можете использовать это как:
<my-status status={{myScopeVariable}}></my-status>