【发布时间】:2017-03-29 20:20:55
【问题描述】:
尝试在 Angular 2 中学习有关过滤和排序的知识。我似乎找不到任何体面的资源,而且我一直在思考如何使用索引以相反的顺序对 ngFor 输出进行排序。我写了以下管道,它一直给我错误,数组切片不是函数。
@Pipe({
name: 'reverse'
})
export class ReversePipe implements PipeTransform {
transform(arr) {
var copy = arr.slice();
return copy.reverse();
}
}
我的 ngfor 看起来像这样。
<div class="table-row generic" *ngFor="let advert of activeAdverts | reverse let i = index;" [attr.data-index]="i" (click)="viewAd(advert.title)">
<div class="table-cell white-text">{{ i+1 }}</div>
<div class="table-cell white-text">{{advert.title}}</div>
<div class="table-cell green-text">{{advert.advert}}</div>
</div>
【问题讨论】:
-
如果您遇到错误,请在您的问题中分享。
-
你有语法错误吗?
-
我猜你需要添加
if(!ar) return;以免在null被传递时出错。 -
数组中肯定有项目。当我从 ngfor 中删除管道时,我得到了输出。我看到的错误类型是 slice 不是函数或 reverse 不是函数。
-
` | 后面需要一个分号反向`。
标签: javascript angular angular2-pipe