次の理論的なコードを実現したい:
VIEW.html
<li ng-repeat="player in players | filter:myCustomFilter(player)">{{player.name}}
CONTROLLER.js
// some theoretical conditional statement that return a boolean
$scope.otherCondition = true;
$scope.myCustomFilter = function(player) {
return player.name.substring(0,1).match(/A/gi) && $scope.otherCondition;
}
したがって、すべてのプレーヤーを Angular モデルにロードしたいのですが、名前が文字「A」で始まる DOM にのみプレーヤーをレンダリングしたいと考えています。このようなことをしようとすると、コンソールplayer
は未定義であると通知します。これを (経由で) 達成するために、カスタム フィルタを作成する必要がありangular.module().filter()
ますか?