Возвращение данных с 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, время: 06:25. |