Html 如何在嵌套对象数组上应用过滤器
大家好,我是angularjs的新手。我正在尝试对以下内容应用筛选器。但实际情况是,它并不是使用ng repeat和一些筛选器来迭代所有列表值。它只迭代jobseekerId 1,2,而不是3。如果我移除筛选器,则意味着它迭代所有列表值(1,2,3)。 我的代码有什么问题。请给出一些建议 这是我的数据 ====================== 这是我的过滤器Html 如何在嵌套对象数组上应用过滤器,html,angularjs,Html,Angularjs,大家好,我是angularjs的新手。我正在尝试对以下内容应用筛选器。但实际情况是,它并不是使用ng repeat和一些筛选器来迭代所有列表值。它只迭代jobseekerId 1,2,而不是3。如果我移除筛选器,则意味着它迭代所有列表值(1,2,3)。 我的代码有什么问题。请给出一些建议 这是我的数据 ====================== 这是我的过滤器 <div class="wrapper" ng-app="candidateListApp" ng-controller="ca
<div class="wrapper" ng-app="candidateListApp" ng-controller="candidateListController">
<span ng-cloak ng-repeat="jsList in jobSeekerList|filter:{jobSeekerSkillVo:
{skill:drpSkill},})}}">
<a ng-href="#">
{{jsList.firstName}} {{jsList.lastName}}
</a>
</span>
<span ng-if="jsList.jobSeekerSkillVo.length != 0">
<span ng-repeat="skills in jsList.jobSeekerSkillVo">
{{skills.skill}}
{{$last?'':','}}
</span>
</span>
</div>
<script>
var app=angular.module("candidateListApp",[]);
app.controller("candidateListController",function($scope,$http){
$scope.jobSeekerList=${jobSeekerJsonArray};
});
</script>
{{skills.skill}
{{$last?'':','}}
var app=angular.module(“candidateListApp”,[]);
app.controller(“candidateListController”,函数($scope,$http){
$scope.jobSeekerList=${jobSeekerJsonArray};
});
这是我的模型(带有jsp代码)
技能
${skills.skill}
它正在按预期工作。请阅读筛选器文档问题是,id=3的结构包含“jobSeekerSkillVo”:[]
这是一个空数组,但应用的筛选器是筛选器:{jobSeekerSkillVo:{skill:drpSkill}
。显然,您只需要那些包含jobSeekerSkillVo
数组的对象,这些数组必须包含skill:something
。tq这就是problem@Gaurav但是如何避免在第一次加载页面时进行过滤呢???在上面的代码中,过滤器是在加载页面时应用的,这是第一个原因,第二个原因是技能:[]是空的。为什么要这样做,请先加载数据。
<div class="wrapper" ng-app="candidateListApp" ng-controller="candidateListController">
<span ng-cloak ng-repeat="jsList in jobSeekerList|filter:{jobSeekerSkillVo:
{skill:drpSkill},})}}">
<a ng-href="#">
{{jsList.firstName}} {{jsList.lastName}}
</a>
</span>
<span ng-if="jsList.jobSeekerSkillVo.length != 0">
<span ng-repeat="skills in jsList.jobSeekerSkillVo">
{{skills.skill}}
{{$last?'':','}}
</span>
</span>
</div>
<script>
var app=angular.module("candidateListApp",[]);
app.controller("candidateListController",function($scope,$http){
$scope.jobSeekerList=${jobSeekerJsonArray};
});
</script>
<select id="skills" name="skills" class="form-control2" ng-model="drpSkill">
<option value="" disabled="disabled" selected="selected">Skills</option>
<c:forEach items="${skillVo}" var="skills">
<option value="${skills.skill}">${skills.skill}</option>
</c:forEach>
</select>