Фильтрация объектов массива на основе значения свойства - AngularJS - PullRequest
0 голосов
/ 21 мая 2018

У меня есть массив отведений в моем компоненте, но мне нужно отфильтровать все отведения, где выбранный равен true, и сохранить их в переменной.

Как бы я это сделал с AngularJS?

Это то, что у меня сейчас есть, но оно возвращается как неопределенное:

var list = $filter("filter")($scope.leads, {
            selected: true
});

Обратите внимание, что некоторые объекты имеют свойство: "selected": true, а некоторые нет.

Пожалуйста, дайте мне знать, какая (если таковая имеется) дополнительная информация вам требуется.

Спасибо

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Невозможно воспроизвести проблему.

angular.module("app",[])
.run(function($filter) {
    var $scope_leads=[
    {"name":"one","selected":true},
    {"name":"two","selected":false},
    {"name":"three"},
    {"name":"four","selected":true}
    ];

    var list = $filter("filter")($scope_leads, {
                selected: true
    });
    console.log(list);
})
<script src="//unpkg.com/angular/angular.js"></script>
<body ng-app="app">
<body>
0 голосов
/ 21 мая 2018

Я сделал пример того, как фильтровать по выбранным.Посмотри.

var leads=[
{"name":"one","selected":true},
{"name":"two","selected":false},
{"name":"three"},
{"name":"four","selected":true}
];

var list = leads.filter(function(lead) {
           return lead.selected
});

console.log(list);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...