无法识别Javascript数组中的重复值

时间:2018-11-16 10:03:38

标签: javascript typescript for-loop

嗨,我在HTML中有输入(在ngFor内部,所以使用数组的长度创建了相同的输入字段),并绑定到ngModel,并且具有ngModelChange函数,如下所示:

 onChangeReference(value: any, account: any, option: any) {
        // this.referenceArray = Object.keys(this.your_reference).map(key => this.your_reference[key]);
        console.log(this.referenceArray, value, 'huhu');
        let tmpReference:Array<any> = [];
        if (value) {
            if (_.includes(this.referenceArray, value)) {
                console.log('item und');
                option.isRefDuplicate = true;
                // this.referenceArray.pop();
            } else {
                console.log('item illa');
                this.referenceArray.push(value);
                option.isRefDuplicate = false;
            }
        }
}

基本上我需要实现的是,如果this.your_reference数组中有任何重复的值,我需要在该特定输入字段下方显示错误。我可以达到90%,但是现在的问题是,如果在一个输入字段中输入“ aaa”,而在其他输入字段中输入相同的值“ aaa”,则工作正常。显示错误消息。但是当我退格并删除一个值时,它实际上是一个新值“ aa”,该值不应该在我的this.your_reference数组中。但是它仍然显示错误。如何解决这些家伙。有想法吗?

0 个答案:

没有答案