首页 > 如下的json数组,如何在angularjs中进行循环?

如下的json数组,如何在angularjs中进行循环?

希望得到的格式是:

软件开发
JAVA开发工程师,IOS开发工程师,安卓开发工程师,xx,xx,xx...
UI/UE设计
用户界面设计,网页设计美工,xx,xx,...

我目前想到的方式有两种,一种是通过拆散成{“type”:“软件开发”,“name”,“java工程师”}的格式,通过ng-if来判断type相等,此方法成立。
一种是希望在循环中再次遍历循环,代码如下:

然而却并没有成功,而且只是循环joblist.jobName也不可以,是因为ng-repeat中不可以这么写么?

controller代码如下:


template

<div ng-controller="MyCtrl">
    <div ng-repeat="job in joblist">
        <h4>{{job.type}}</h4>
        
        <!-- 利用filter -->
        <p>{{job.jobName | display}}</p>
        
        <!-- 直接ng-repeat -->
        <p>
            <span ng-repeat="n in job.jobName">
                {{n.name}}<span ng-if="!$last">,</span>
            </span>
        </p>
    </div>
</div>

js

angular.module('myApp', [])
    .controller('MyCtrl', function ($scope) {
        $scope.joblist = [
            {
                type: '软件开发',
                jobName: [
                    {name: 'JAVA开发工程师'},
                    {name: 'IOS开发工程师'}
                ]
            },
            {
                type: 'UI/UE设计',
                jobName: [
                    {name: '用户界面设计'},
                    {name: '网页设计'}
                ]
            }
        ];
    })
    .filter('display',function () {
        return function (jobName) {
            return jobName.map(function (item) {
                return item.name;
            }).join(',');
        }
    })

搞懂了,写一个笔记,例子出来分享一下好吗


嵌套循环,里面的那层循环是在外面的数据基础上,你的JS数据上没有问题的话,html上应该这样写

<div ng-repeat="jobtype in joblist">
    <h3>{{jobtype.type}}</h3>
    <div ng-repeat="job in jobtype.jobName"><!-- 这里的jobtype.jobName就是你想循环的内层数组 -->
        <p>{{job.name}}</p>
    </div>
</div>
【热门文章】
【热门文章】