我正在Angular中创建一个表,我的问题是当我遍历项目数组时,我有一个重复值(syscode)。我想知道是否有一种方法可以隐藏表中已经显示的值,这里是数据结构的外观。

系统码

out_signal_id

sig_epoch_utc

num_of_signals

status_code

status_note

哪里syscode总是包含两次相同的值,在遍历数组时是否有只在Angular中显示一次的值?谢谢

<tr ng-repeat="value in sd.data | orderBy: sd.sort_by.col:sd.sort_by.reverse">
                    <td class="text-center no-wrapping">{{value.syscode}}</td>
                    <td>{{value.out_signal_id}}</td>
                    <td class="text-center no-wrapping">{{value.sig_epoch_utc}}</td>
                    <td class="text-center ">{{value.num_of_signals}}</td>
                    <td class="text-center no-wrapping">{{value.status_code}}</td>
                    <td class="text-center no-wrapping">{{value.status_note}}</td>
        <tr >

最佳答案

您可以使用角度插入angular-ui并使用'unique'过滤器,以便根据属性过滤出唯一值,

只需将其更新为

<tr ng-repeat="value in sd.data | orderBy: sd.sort_by.col:sd.sort_by.reverse | unique:'syscode'">


演示



<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/angular-ui/0.4.0/angular-ui.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
    <p ng-repeat="x in data.response | unique: 'ename'">{{x.ename}}</p>
<script>
//App declaration
var app = angular.module('myApp',['ui.filters']);
//Controller Declaration
app.controller('myCtrl',function($scope){
    $scope.data = {"response": [
        {
            "sid": 1,
            "eid": "AA",
            "ename": "AA11"
          },{
            "sid": 2,
            "eid": "AA",
            "ename": "AA11"
          }
    ],
    "status": "success"
};
});
</script>
</body>
</html>

关于javascript - Angular 1.5隐藏ng-repeat上的重复值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44119372/

10-12 00:17
查看更多