2

私はレコードの配列を持っています。この配列は、ユーザーの権限に基づいてさまざまなレコードを表示します。

したがって、ユーザーに基づいて別のフィルターを使用する必要があります。ユーザーの許可に基づいて変数関数を取るような式を作成するにはどうすればよいですか -

<div ng-repeat="r in records | filter:{isVisible:true}"

上記にはフィルター式 {isVisible:true} があります。ユーザーに基づいて異なるフィルター式を動的に割り当てたい。したがって、user2 は {isCommon: 'M2'} になります。

4

2 に答える 2

12

フィルタ式も変数にすることができます。

<li ng-repeat="item in items | filter:filterExpr">{{item.name}}</li>

式がスコープで定義されている場合:

$scope.filterExpr = { tester: true };

これをより完全に示すプランカーは次のとおりです。http : //plnkr.co/edit/Au8KFg?p = Preview

PS:注意することが非常に重要なので、投稿に対する@MarkRajcokのコメントに注意してください。

于 2013-01-12T19:57:38.527 に答える
2

2Terry Drozdowski - 完全に正しい: フィルターは最近のバージョン (1.1.7) のブール値では機能しません。ご指摘ありがとうございます - 引用符を使用する必要があります:

<div ng-repeat="r in records | filter:{isVisible:'true'}"
于 2013-08-20T08:27:39.030 に答える