我的控制器中有列表:
$scope.newsLists = [
{ newsName: list1, newsStatus: isOpen },
{ newsName: list2, newsStatus: isOpen },
{ newsName: list3, newsStatus: isOpen },
{ newsName: list4, newsStatus: isClosed }
];
然后我想基于此$scope.newsList
创建另一个列表。
如:
$scope.valueNewsLists = $scope.newsLists(list.newsStatus == isOpen);
但我不知道如何以正确的方式创建$scope.valueNewsLists
。
我确实需要这个列表,因为我必须为页面编写一个函数。
如果有人对这个问题有解释,我将非常感激!
答案 0 :(得分:1)
您可以使用内置的Javascript Array.prototype.filter函数过滤现有数组:
var isOpen = function(element) {
return element.newsStatus == isOpen
}
$scope.valueNewsLists = $scope.newsLists.filter(isOpen);
答案 1 :(得分:0)
您可以在模板上使用过滤器以获得所需的结果。
<div ng-repeat="list in newsList| filter:{newsStatus:'isOpen'}">
<input ng-model="list.newsName" />
</div>