угловые 2. трубы. Не удается прочитать свойство undefined
я сделал трубу
@Pipe({
name: 'orgFilter'
})
export class OrgFilterPipe implements PipeTransform {
transform(orgs: Organization[], args: String[]): any {
console.log(orgs)
let filter = args[0].toLowerCase();
return filter ? orgs.filter((org:Organization) => org.name.toLowerCase().indexOf(filter) != -1): orgs;
}
и используя его в HTML:
<tbody>
<tr *ngFor="#organization of organizations | orgFilter:listFilter.value">
<td>{{ organization.organizationName }}</td>
<td>{{ organization.city }}</td>
<td>{{ organization.state }}</td>
<td>{{ organization.country }}</td>
<td>
<i class="material-icons">mode_edit</i>
</td>
<td>
<i class="material-icons">delete</i>
</td>
</tr>
<tr>
<td>
<div class="col-md-4"><input type="text" #listFilter (keyup)="0" /></div>
</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
я получаю сообщение об ошибке browser_adapter.js: 84 TypeError: Невозможно прочитать свойство 'toLowerCase' undefined в t.transform (orgFilter.ts: 9)
проблема заключается в let filter = args [0] .toLowerCase ();
что вызывает это? Значит ли это, что args не имеет значений? я должен объявить это где-нибудь? я использую трубу неправильно в HTML? если я удаляю трубу, я вижу таблицу с данными. но когда я помещаю его в HTML, данные исчезают, и в таблице есть только это поле ввода