AngularJS のテンプレートにロジックをインラインで記述する方法はありますか?
私がやりたいことは次のようなものです:
<div ng-repeat="item in items">
{{item.isValid ? 'Valid item' : 'Invalid Item'}}
</div>
&&
andを使用できます||
。これは、最終的に三項演算子と同じように機能します。
{{item.isValid && 'Valid' || 'Invalid' }}
編集:Angularは1.1.5で三項演算子を導入しました:
{{item.isValid ? 'Valid' : 'Invalid' }}
angular 式では条件を使用できません。また、div コンテンツが軽い (テキストのみ) 場合は、ng-bind を使用することをお勧めします (また、span 要素を追加する必要がなくなります)。
<div ng-repeat="item in items" ng-bind="{true: 'Valid item', false: 'Invalid item'}[item.isValid]"></div>
ng-show でスパンを挿入して、条件付きテキストを表示できます
例
<div ng-repeat="item in items">
<span ng-show="item.isValid">
Valid item
</span>
<span ng-show="!item.isValid">
Invalid item
</span>
</div>