包括未按Angular 5预期进行过滤

时间:2018-12-10 14:50:50

标签: typescript include angular5

我正在尝试使用include进行过滤,以显示建筑物地址中的状态。例如,即使华盛顿有十座建筑物,我也只想向华盛顿展示一次

for (let i=0; i<=this.professional.hospital.length; i++) {
        if(this.professional.hospital[i].address && this.professional.hospital[i].address.length > 0) {
            if (this.states.includes(this.professional.hospital[i].address[0].state) === false) {
                this.states.push({label: this.professional.hospital[i].address[0].state,
                    value: this.professional.hospital[i].address[0].state
                });
            }
        }
    }

这通常是我的方法,但是即使状态在数组中,它也会添加状态 任何想法的人

1 个答案:

答案 0 :(得分:0)

for (let i=0; i<this.professional.hospital.length; i++) {
        if(this.professional.hospital[i].address && this.professional.hospital[i].address.length > 0) {
            if (!this.states.find(x => x.value == this.professional.hospital[i].address[0].state)) {
                this.states.push({label: this.professional.hospital[i].address[0].state,
                    value: this.professional.hospital[i].address[0].state,
                });
            }
        }
    }

我知道了。如果有人被卡住,这就是这种方式