これは、あなたは確かに多くの改良を行うことができ、一回のみフィルタします。
applyExtraFilter() {
this.moreFilter = !this.moreFilter;
this.allItems = this.listings;
this.allItems = this.allItems.filter(fil => {
let result = true;
if (this.deliveryConcession[0].checked && fil.seatingConcession.parking != this.deliveryConcession[0].checked) {
result = false;
}
if (this.deliveryConcession[1].checked && fil.seatingConcession.parking != this.deliveryConcession[2].checked) {
result = false;
}
if (this.deliveryConcession[2].checked && fil.seatingConcession.parking != this.deliveryConcession[3].checked) {
result = false;
}
if (this.seatConcession[0].checked && fil.seatingConcession.parking != this.seatConcession[0].checked) {
result = false;
}
if (this.seatConcession[1].checked && fil.seatingConcession.parking != this.seatConcession[1].checked) {
result = false;
}
if (this.seatConcession[2].checked && fil.seatingConcession.parking != this.seatConcession[3].checked) {
result = false;
}
return result;
});
this.setPage(1);
}
そのキーワードがあなたのIDEの代わりに使用var
に問題を与える場合、私は、result
を宣言するためにlet
を使用しています。
明示的に 'this.deliveryConcession'アイテムに反復処理するのではなく、明示的にアクセスしている特定の理由はありますか? –
具体的な理由が実際にはありません – user2280016
私はあなたのための解決策を持っていましたが、最初のケースでは '[0、2、3] 'と2番目のケースでは[0、1、3] 。 –