如何编写一个过滤器,它只返回列表的最后一个元素/如何编写一个返回除最后一个元素之外的所有过滤器。
背景: 我有一个项目列表,其中最后一项应该是可编辑的。因此我需要这个过滤器才能得到它。
答案 0 :(得分:1)
您可以使用Pipe
过滤数组
<强>管强>
@Pipe({name: 'lastItem'})
export class LastItemPipe implements PipeTransform {
transform(items: any[], exclusive: boolean): any {
if (exclusive) { return items.slice(0, items.length - 1); }
return [items[items.length - 1]];
}
}
<强>模板强>
<h2>list without</h2>
<div *ngFor="let item of items | lastItem:true">{{item}}</div>
<h2>list with</h2>
<div *ngFor="let item of items | lastItem:false">{{item}}</div>