使用AngularJS我可以做到:
item in (filteredList.sup = (nozzles | rangeFilter: { flow: calc.q.tempFlow, pressure: calc.pressure } | orderBy: 'pressao'))
我已经进行了ng-repeat及其结果,我已经设置为 filteredList.sup 变量。
我正在尝试使用Angular 2做同样的事情,但不像AngularJS 那样容易(我是Angular 2的新手)
我试过了: ng2: How to create variable in ngFor loop
和
https://github.com/angular/angular/issues/2451
没有成功! :/
PS *如果我可以在“controller”/component.ts中使用我的管道,它也可以提供帮助。
实际代码:
listService.ended
| filterBy: { empresaId: selectedCompany }
| filterOperador: filtroOperador
| dateRange: dateRange.min : dateRange.max
filterBy = https://www.npmjs.com/package/ng2-filter-pipe
filterOperador& dateRange =自定义管道
答案 0 :(得分:2)
在Angular2中,它无法实现,但正如Angular4中提到的here,您可以像我们在angularjs
中那样再次实现它。
*ngFor="let user of userObservable | async as results;
如果我可以在"控制器" /component.ts中使用我的管道,它也可以提供帮助。
是的,如果您不介意在模板和组件中使用Pipe两次,您可以通过这种方式调用管道:
// inject the Pipe
constructor(pipe: XXXPipe){}
getPipeResult() {
// call Pipe's transform
let pipeResult = this.pipe.transform(input, arg1, arg2, ...)
}