自定义管道数组为空

时间:2017-05-23 18:25:13

标签: angular typescript angular-pipe

我创建了这个自定义管道:

@Pipe({ name: 'orderBy' })
export class OrderByPipe implements PipeTransform {
     transform(items: any[], orderBy: string): any[] {
        if (items && items.length > 1) {
            console.log('items -> ', items);
        }
        console.log('return -> items -> ', items);
        return items;
     }
 }

我在组件中使用它:

<tr *ngFor="let item of items | orderBy:'title'" class="myclass">

表行正确显示,但在管道中items数组长度始终为零。从管道返回的控制台语句显示填充了对象的数组。为什么数组看起来是空的?

1 个答案:

答案 0 :(得分:1)

只需添加括号,如下所示。这会将项目发送到管道,并将结果发送回ngFor循环。

<tr *ngFor="let item of ( items | orderBy:'title')" class="myclass">

请参阅:Angular Offiical Documentation搜索“ ngfor”以查看示例。