Q) Was ist falsch an meiner Syntax/Code unten?Ionic 2: Pipe zum Filtern der Async-Liste nach Name Eigenschaft
Ich möchte meine Liste von Elementen mit dem Namen Eigenschaft filtern. Ich habe unten mit dem Code versucht, aber ich erhalte die Fehlermeldung:
Kann nicht Eigentum ‚toLowerCase‘ undefinierten
Hinweis lesen: Abfrage ist definiert als eine leere Zeichenfolge auf Seite Last dh
var query = "";
Meine Vorlage:
<ion-card *ngFor="#item of (items | clientNameFilter:query)">
<img [src]="getItemImage(item)" (click)="editItem(item)"/>
<ion-card-content (click)="editItem(item)">
<h2 class="card-title">{{item.name}}</h2>
<p>{{item.address.name}}</p>
<p>{{item.address.addressLine1}}</p>
<p>{{item.address.town}}</p>
<p>{{item.address.postcode}}</p>
</ion-card-content>
</ion-card>
Mein Filter:
import {Pipe, PipeTransform} from 'angular2/core';
import {Client} from '../interfaces/client';
@Pipe({
name: 'clientNameFilter',
pure: false
})
export class ClientNameFilterPipe implements PipeTransform {
transform(query: string, clients: Client[]) {
return clients.filter(client =>
client.name.toLowerCase().indexOf(query) > -1
);
}
}
Did y Oder versuchen Sie, 'clients' und' client.name' zu drucken, um zu sehen, wann sie 'null' sind? –