33

AngularJS のテンプレートにロジックをインラインで記述する方法はありますか?

私がやりたいことは次のようなものです:

<div ng-repeat="item in items">
    {{item.isValid ? 'Valid item' : 'Invalid Item'}}
</div>
4

3 に答える 3

75

&&andを使用できます||。これは、最終的に三項演算子と同じように機能します。

{{item.isValid && 'Valid' || 'Invalid' }}

編集:Angularは1.1.5で三項演算子を導入しました:

{{item.isValid ? 'Valid' : 'Invalid' }}

于 2013-03-14T13:08:04.150 に答える
0

angular 式では条件を使用できません。また、div コンテンツが軽い (テキストのみ) 場合は、ng-bind を使用することをお勧めします (また、span 要素を追加する必要がなくなります)。

<div ng-repeat="item in items" ng-bind="{true: 'Valid item', false: 'Invalid item'}[item.isValid]"></div>
于 2013-03-14T12:24:27.177 に答える
0

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>
于 2013-03-14T12:17:21.770 に答える