我有一个数组,这个数组包含一些Id。 我想根据Id的过滤我的结果。
例如,请参阅下面的代码段。 如何显示'StatusId'位于'ids'数组中的记录? 根据我的例子,我只想列出:
AAA BBB CCC
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script>
angular.module('myApp', []).controller('ctrl', function ($scope) {
$scope.ids = [{
"id": 1
}, {
"id": 2
}, {
"id": 3
}]
$scope.records = [
{
"Name": "AAA",
"StatusId": 1
},
{
"Name": "BBB",
"StatusId": 1
},
{
"Name": "CCC",
"StatusId": 2
},
{
"Name": "DDD",
"StatusId": 4
},
{
"Name": "EEE",
"StatusId": 4
},
]
});
</script>
<body>
<div id="idctrl" ng-app="myApp" ng-controller="ctrl">
<ul>
<li ng-repeat="x in records">
{{ x.Name }}
</li>
</ul>
</div>
</body>
</html>
答案 0 :(得分:1)
您可以使用javascript&#39;过滤器&#39;功能:
records = $scope.records.filter((record) => {
return record.StatusId === 1
});
这将返回一个新数组,该数组仅包含StatusId为1的记录。您可以使用此更新的数组来显示所需的记录。