gpt4 book ai didi

javascript - 仅在 ng-repeat 中打印唯一值

转载 作者:行者123 更新时间:2023-11-29 21:08:14 27 4
gpt4 key购买 nike

我有以下代码片段:

 <tr ng-repeat="val in myObj">
<td>{{val.Action}}</td>
<td>{{val.Tx}}</td>
<td>{{val.Qty}}</td>
<td>{{val.Price}}</td>
</tr>

我想打印 {{val.Action}} 仅当它是列表中的第一个唯一值时。否则我想打印空格 ""。是否可以通过创建过滤器来做到这一点?还是其他方式?

最佳答案

您可以通过检查前一个元素 (items[$index-1]) 来解决您的问题,如果它的 Action 字段等于当前元素 (items[ $index-1].Action == val.Action) 你应该写空字符串,否则是值。为了该算法的正确性,您应该按该字段进行排序。因为你有 filterorderBy,你不能只写 myObj[$index-1],因为 myObj array 和 filtered&sorter array(items) 不一样,所以你应该申请赋值:items = (myObj...

angular.module('app', []).controller('MyController', ['$scope', function($scope) {
$scope.myObj = [
{Action:'Action3', Tx:4, Symbol: 'a' },
{Action:'Action1', Tx:1, Symbol: 'c' },
{Action:'Action2', Tx:3, Symbol: 'b' },
{Action:'Action3', Tx:5, Symbol: 'a' },
{Action:'Action1', Tx:2, Symbol: 'c' },
{Action:'Action3', Tx:6, Symbol: 'a' }
];
}])
<script src="//code.angularjs.org/snapshot/angular.min.js"></script>

<body ng-app="app">
<div ng-controller="MyController">
<input type='text' ng-model='someValue' ng-init='someValue="a"'/>
<table>
<tbody>
<tr ng-repeat="val in items = (myObj | filter : { Symbol: someValue } | orderBy: 'Action')">
<td>{{(items[$index-1] && items[$index-1].Action == val.Action) ? '' : val.Action}}</td>
<td>{{val.Tx}}</td>
<td>{{val.Symbol}}</td>
</tr>
</tbody>
</table>
</div>
</body>

关于javascript - 仅在 ng-repeat 中打印唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42923827/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com