Есть ли способ написать логику inline в шаблоне в AngularJS.Inline-logic в шаблонах в AngularJS
То, что я хочу сделать что-то вроде этого:
<div ng-repeat="item in items">
{{item.isValid ? 'Valid item' : 'Invalid Item'}}
</div>
Есть ли способ написать логику inline в шаблоне в AngularJS.Inline-logic в шаблонах в AngularJS
То, что я хочу сделать что-то вроде этого:
<div ng-repeat="item in items">
{{item.isValid ? 'Valid item' : 'Invalid Item'}}
</div>
Вы можете использовать &&
и ||
, который завершится так же, как и троичные операторы.
{{item.isValid && 'Valid' || 'Invalid' }}
EDIT: Угловые введенные тройные операторы в 1.1.5:
{{item.isValid ? 'Valid' : 'Invalid' }}
Вы можете вставить промежуток с нг-шоу, чтобы показать ваш условный текст
Пример
<div ng-repeat="item in items">
<span ng-show="item.isValid">
Valid item
</span>
<span ng-show="!item.isValid">
Invalid item
</span>
</div>
Это именно раздутый решение, я боялся ... :( –
Вы не может использовать условные выражения в угловых выражениях. И, если содержание DIV свет (только текст), вы можете использовать нг-привязку (это также избавляет от необходимости дополнительного элемента SPAN):
<div ng-repeat="item in items" ng-bind="{true: 'Valid item', false: 'Invalid item'}[item.isValid]"></div>
Красивая именно то, что я и в настоящее время я лучше понимаю, как их использовать. Спасибо. –
Угловые введенные тернары в 1.1.5. См. здесь - http: // stackoverflow .com/questions/12008580/a-ternary-in-angle-templates-angularjs/12151492 # 12151492 – BradGreens
Просто интересно, есть ли потенциальные проблемы с использованием неэкранированного '&' в HTML? Может ли браузер производить ошибки проверки до углового отображения шаблонов? – kapace