Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ng重复如何取消重复键但保留行数据?_Javascript_Html_Angularjs - Fatal编程技术网

Javascript ng重复如何取消重复键但保留行数据?

Javascript ng重复如何取消重复键但保留行数据?,javascript,html,angularjs,Javascript,Html,Angularjs,我有一张桌子,看起来像下图 正如您所看到的,右侧的文本是重复的,因为每一行代表不同的数据,我希望有不同的行,并且我希望在同一行中显示每一行的数据,例如“فدية” 角度代码: <tbody ng-repeat="(key, value) in vm.reportData | groupBy :'ProductNameAR'"> <tr ng-repeat="item in value"> <td>{{item.ProductName

我有一张桌子,看起来像下图

正如您所看到的,右侧的文本是重复的,因为每一行代表不同的数据,我希望有不同的行,并且我希望在同一行中显示每一行的数据,例如“فدية”

角度代码:

<tbody ng-repeat="(key, value) in vm.reportData | groupBy :'ProductNameAR'">

    <tr ng-repeat="item in value">
        <td>{{item.ProductNameAR}}</td>
        <%-- CHANNEL '  نقاط البيع' --%>
        <td>{{item.ChannelID == 1 ? item.Amount : 0}}</td>
        <td>{{item.ChannelID == 1 ? item.Value :  0}}</td>
        <td>0</td>
        <td>0</td>
        <%-- CHANNEL ' المسلخ' --%>
        <td>{{item.ChannelID == 4 ? item.Amount : 0}}</td>
        <td>{{item.ChannelID == 4 ? item.Value : 0}}</td>
        <td>0</td>
        <td>0</td>
        <%-- CHANNEL  ' السوق الإلكتروني' --%>
        <td>{{item.ChannelID == 2 ? item.Amount : 0}}</td>
        <td>{{item.ChannelID == 2 ? item.Value : 0}}</td>
        <td>0</td>
        <td>0</td>
        <td>2</td>
        <td>950</td>
    </tr>
</tbody>

{{item.ProductNameAR}
{{item.ChannelID==1?item.Amount:0}
{{item.ChannelID==1?item.Value:0}
0
0
{{item.ChannelID==4?item.Amount:0}
{{item.ChannelID==4?item.Value:0}
0
0
{{item.ChannelID==2?item.Amount:0}
{{item.ChannelID==2?item.Value:0}
0
0
2.
950
我收到的Json数据如下所示:


在视图上渲染之前过滤副本 首先获取原始数据并进行筛选 假设您的数组位于arr上,并且没有重复的数组是newArr

var newArr = [];
 arr.forEach(function(value){
    if(!newArr.some(elem => elem.id === value.id){
        newArr.push(value);
    }
})

在此之后,newArr上的数据可以在重复标识符上使用,没有重复

它不起作用。当样本数据是图片时,很难再现问题。