如何通过标记中的角度表达式过滤到数组中的单个项目?

时间:2013-09-20 17:44:16

标签: angularjs angularjs-directive

我有一个元素,我想绑定到数组中的单个项目,ng-repeat似乎不适用。

如何执行以下操作以绑定到数组中的单个项目

<p class="bottomline">{{vehicle.Taglines[0].Tagline | $filter:{MarketId:$scope.MarketId}}</p>

2 个答案:

答案 0 :(得分:13)

你可以试试这个:

{{ (vehicle.Taglines | filter: {MarketId: MarketId})[0]["Tagline"] }}

注意,filter 不是 $filter!并且您在过滤器对象参数后错过了一个括号!

答案 1 :(得分:2)

我认为不可能,但你总是可以在控制器中编写这个逻辑(并避免在模板中加入太多逻辑)

module('yourApp', []).controller(['$scope, $filter', function Controller($scope, $filter){
    $scope.$watch('MarketId', function(marketId) {
        $scope.tagLineFound = $filter('filter')($scope.vehicle.Taglines, marketId)[0];
    });
}]);

HTML

<p class="bottomline">{{tagLineFound.Tagline}}</p>