angularjs - 使用 AngularJS 按父级属性过滤数组中的 ng-repeat 数组

标签 angularjs multidimensional-array angularjs-ng-repeat

我想通过父级的属性在数组中选择一个数组。我不知道索引(在本例中为 1),但我知道 id。我可以做吗?这是我使用索引的工作示例,我希望通过 id (43) 获得相同的结果。

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<div data-ng-app="myApp" data-ng-controller="myCtrl">
 <ul>
    <li ng-repeat="p in people[1].rooms" ng-bind="p"></li>
 </ul>
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.people = [
    {
        id: 25,
        nick: 'Joker',
        rooms: ['room1', 'room2']
    },
    {
        id: 43,
        nick: 'King',
        rooms: ['room3', 'room4']
    },
    {
        id: 78,
        nick: 'Queen',
        rooms: ['room5', 'room6']
    }
 ]
});
</script>

最佳答案

您应该使用 people 数组上的严格过滤器按 id 分隔特定用户的房间。很明显,您将使用单个记录作为其基于 id 的搜索。

代码

<ul>
    <li ng-repeat="p in filteredPeople = (people | filter: {id: l.id })[0].rooms">
       {{p}}
    </li>
</ul>

关于angularjs - 使用 AngularJS 按父级属性过滤数组中的 ng-repeat 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34233002/

相关文章:

javascript - 获取对象 ID 并插入到 session 存储 Angular

angularjs - 如何在非html5模式下检索搜索参数

angularjs - ng-style 在嵌套的 ng-repeat 中不起作用

c# - 将一维数组粘贴到二维数组中

javascript - 在 AngularJS 的 ng-repeat 中添加等待

javascript - 更新 Controller 变量更改指令创建的元素

android - Ionic With Facebook connect on Android Device - probleme return url?

javascript - 是否可以使用 $logProvider 登录模块的配置 block ?

Java 2d String数组填充数组

javascript - 如何在 Javascript 中对二维数组进行子集化?