只需重复一次重复第一行

时间:2017-09-21 15:04:06

标签: html angularjs angularjs-ng-repeat

我有一个带有以下参数的mongodb集合:

{
"_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>

问题在于标题也在重复。 我怎么能避免它?

1 个答案:

答案 0 :(得分:0)

这不是使用您的数据,但这显示了如何使用(经常被误用的)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>