Я написал свой собственный фильтр, когда он исчез в angular2:
import {Pipe, PipeTransform} from 'angular2/core';
@Pipe({
name: 'myFilter'
})
export class MyFilter implements PipeTransform {
transform(customerData: Array<Object>, args: any[]) {
if (customerData == undefined) {
return;
}
var re = new RegExp(args[0]);
return customerData.filter((item) => re.test(item.customerId));
}
}
И используйте его в моем шаблоне:
<tr *ngFor="#singleCustomerData of customerData | myFilter:searchTerm">
...
</tr>
Теперь я хотел бы посмотреть, сколько совпадений возвращает труба. Таким образом, по существу размер возвращаемого массива.
В angular 1.x мы смогли назначить возвращаемый набор переменной в шаблоне следующим образом:
<div ng-repeat="person in filtered = (data | filter: query)">
</div>
Но мы больше не можем назначать переменные в шаблонах в angular2.
Итак, как мне получить размер отфильтрованного набора без одновременного вызова фильтра?