0
我正在使用Angular 2.在我的一個場景中,我必須爲一個DataTable添加多個過濾器。我爲我的項目創建了自定義DataTable。
過濾器,如: Angular 2中的一個數據表的多個過濾器
計算器上,我發現這個Plunker https://plnkr.co/edit/e0PCIsqXumbXe6mAUWBI?p=preview
對谷歌和審查搜索答案後,我有一些代碼在plunker但不是爲我工作。
我的代碼:
管:
transform(items: Array<any>, filter: {[key: string]: any }): Array<any> {
return items.filter(item => {
let notMatchingField = Object.keys(filter)
.find(key => item[key] !== filter[key]);
return !notMatchingField; // true if matches all fields
});
}
組件HTML:
<tr *ngFor="let item of dataresult | jbgridfilter: filterItems | orderBy : [orderbyKey, 'ID'] | paginate: { itemsPerPage: numOfPages, currentPage: p }"
(click)="showRowDetails(item)">
<td *ngFor="let key of keysArray;"><span>{{item[key]}}</span></td>
<tr>
組件類:
valueForFilter(key, event) {
let item = {key: event};
this.filterItems.push(item);
}
需要注意的是:該表是動態的,意味着字段可以是任何不固定的。
我得到錯誤「無法讀取屬性未定義‘過濾器’」 – Jigarb1992
我已經設置'純粹:錯誤',但錯誤仍然存在 – Jigarb1992
你看過我發佈的鏈接嗎?你是否也修復了代碼來更新你的對象? – bakerhumadi