只重复第一行一次 ng-repeat

repeating the first line just once ng-repeat

我有一个 mongodb collection 参数:

{
"_id": ObjectId("59c265235e21f8a8b7d75b23"),
"email": "tworsnipi@bbc.co.uk",
"password": "PlPEVQpAt",
"company_name": "Oyope",
"site": "noaa.gov",
"description": "lorem id ligula suspendisse ornare",
"ads": [{
    "id": 19,
    "users_apply": [],
    "email": "bmenguyi@utexas.edu",
    "phone": "(847) 2671999",
    "location": {
        "longtitude": -88.0549221,
        "latitude": 42.1165506
    },
    "status": "open",
    "skills": ["Financial Analysis"],
    "scope": "half"
  }]
}

我想显示 company_name,以及数组 "ads" 中的所有元素。

为此,我这样做了:

            <tr ng-repeat="ad in pubJobs2 | filter:{company_name: search.company_name} | limitTo : 10 : begin()">
                <td><a ng-click="loadJob(ad.company_name)">{{ad.company_name}}</a></td>
                <td>

                    <table>
                        <tr>
                            <td>email</td>
                            <td>Phone</td>                            
                            <td>location</td>
                            <td>description</td>
                            <td>scope</td>
                            <td>status</td>
                            <td>skills</td>
                            <td></td>                                
                        </tr>

                        <tr ng-repeat="adv in ad.ads | filter:{email: search.email, scope: search.scope} ">
                            <td>{{adv.email}}</td>
                            <td>{{adv.phone}}</td>
                            <td>{{adv.location}}</td>
                            <td>{{adv.description}}</td>
                            <td>{{adv.scope}}</td>
                            <td>{{adv.status}}</td>
                            <td>{{adv.skills}}</td>
                            <td><button class="button" ng-click="applyJob(adv.id)">Apply</button></td>
                        </tr>
                    </table>
                </td>

            </tr>

            </tr>
        </table>

问题是标题也在重复。 我该如何避免呢?

这不是在使用您的数据,而是展示了如何使用(经常被误用的)ngInit 指令来获取对 ngRepeat 中先前记录的引用。如您所见,我只是简单地抑制了该类别,除非它与之前的记录发生了变化。

http://plnkr.co/edit/WtO3AzWokzpbG5YIPSYP?p=preview

<table >
  <tr>
    <td>Category</td>
    <td>Name</td>
  </tr>
  <tr ng-repeat="food in $ctrl.data" ng-init="prevFood = $ctrl.data[$index-1]">
    <td>{{prevFood.category !== food.category ? food.category : '&nbsp;'}}</td>
    <td>{{food.name}}</td>
  </tr>
</table>