我不确定哪里出了问题,但我的过滤器隐藏了行程对象中的所有行程。
我的对象看起来像这样(它们很大,所以我只向您展示结构):
[
{ // itinerary
filters:{
stops:2
}
... children
},
{
... next itinerary
}
]
我的 ngRepeat 看起来像这样
<div class="col-sm-12 item" data-ng-repeat="itinerary in results | filter: {itinerary: {filters: {stops: filterStops}}} | orderBy: orderBy" data-ng-class="{ active: resultDetails }">
我正在像这样设置我的filterStops范围项目
md-checkbox aria-label="Non-Stop" data-ng-model="filterStops" ng-true-value="0">Direct</md-checkbox>
无论是直接将停靠站数量硬编码到过滤器中,还是通过复选框选择它,在任何情况下都不会显示任何内容。没有控制台错误可言,我猜测我到达过滤器对象中的子属性的逻辑有缺陷?
我在这里不知所措,感谢任何帮助。
最佳答案
在 Controller 中创建方法
$scope.filter=function(obj){
return obj.filters.stops == $scope.resultDetails;
}
将此添加到 View
data-ng-repeat="itinerary in results | filter: filter | orderBy: orderBy"
关于javascript - 根据复选框输入过滤深层对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36832571/