Пример данных, которые я получаю с моего сервера:
tasks= [
{
"id":8,
"title":"Eight",
"how_often":"DS",
"how_important_task":"",
"how_important_improvement":"",
"stakeholder":2,
"project":2
},
{
"id":9,
"title":"Nine",
"how_often":"",
"how_important_task":"",
"how_important_improvement":"",
"stakeholder":2,
"project":2
},
{
"id":21,
"title":"Seventeen",
"how_often":"",
"how_important_task":"",
"how_important_improvement":"",
"stakeholder":2,
"project":2
}
]
Шаблон, в котором я показываю эти задачи вместе с фильтрами, которые я хочу применить к ним:
<ion-split-pane>
<ion-grid>
<ion-row padding>
<h5>Filter tasks according to</h5>
</ion-row>
<ion-row padding>
<ion-col>
<ion-list>
<ion-item>
<ion-label>Frequence of performance</ion-label>
<ion-select>
<ion-option *ngFor="let frequency of filer_per_frequency" value="{{frequency.value}}">{{frequency.title}}</ion-option>
</ion-select>
</ion-item>
</ion-list>
</ion-col>
<ion-col>
<ion-list>
<ion-item>
<ion-label>Importance</ion-label>
<ion-select [(ngModel)]="importance">
<ion-option *ngFor="let importance of filer_per_importance" value="{{importance.value}}">{{importance.title}}</ion-option>
</ion-select>
</ion-item>
</ion-list>
</ion-col>
<ion-col>
<ion-list>
<ion-item>
<ion-label>Importance of improvement</ion-label>
<ion-select>
<ion-option *ngFor="let improvement of filer_per_improvement" value="{{improvement.value}}">{{improvement.title}}</ion-option>
</ion-select>
</ion-item>
</ion-list>
</ion-col>
<ion-col>
<ion-list>
<ion-item>
<ion-label>Stakeholder</ion-label>
<ion-select>
<ion-option *ngFor="let stakeholder of filer_per_stakeholder" value="{{stakeholder.value}}">{{stakeholder.title}}</ion-option>
</ion-select>
</ion-item>
</ion-list>
</ion-col>
</ion-row>
<ion-item-divider color="light"></ion-item-divider>
<ion-list>
<button detail-none (click)="expandItem(task)" ion-item *ngFor="let task of tasks">
<h2>{{task.title}}</h2>
<expandable [expandHeight]="itemExpandHeight" [expanded]="task.expanded">
<hr><p>{{task.how_often | fullform}}</p>
<p>{{task.how_important_task | fullform}}</p>
<p>{{task.why_perform_task}}</p>
<p>{{task.sequence_of_actions}}</p>
</expandable>
</button>
</ion-list>
</ion-grid>
</ion-split-pane>
Я должен иметь возможность применять несколько фильтров из доступных одновременно.
Как я могу справиться с этим в моем компоненте, так как конвейеры снизят производительность?