Возвращение данных с PipeTransform Angular2
Всем привет.
Интересует возможность возвращения данных после pipe фильтра. Ситуация следующая: есть таблица юзеров, у каждого юзера есть чекбокс и свойство checked. Хочется сделать кнопку, которая может всем найденным пользователям сделать checked = true. А не всему массиву пользователей. Каким образом можно это реализовать на Angular 2? На jquery можно было пройтись по элементам с помощью .each(), но не хочется. Pipe фильтр Шаблон таблицы Функционал таблицы |
Попробовал с Jquery сделать .prop('checked', true);
Чекбоксы он чекнул, но ngModel не поменял :( свойство checked осталось false. |
|
Цитата:
|
CrazyBite,
Первое, что можно сделать, это вызывать твой фильтр не из HTML шаблона, а импортировать в компонент, создать инстанс этого фильтра и вручную вызывать transform. Ну то есть что-то типа usertable.component.ts import {PipieUsertableComponent} from 'pipe-usertable.component.ts' export class UsertableComponent implements OnInit, OnChanges { ... filteredUsers: User[]; ... } ngOnChanges() { this.filteredUsers = new PipieUsertableComponent().transform(this.users, /* другие параметры */); } check() { this.filteredUsers.forEach( user => user.checked = true); } и в шаблоне <tr *ngFor="let user of filteredUsers; let num = index;"> |
Да, думаю сработает, спасибо большое!
|
Часовой пояс GMT +3, время: 16:02. |