【发布时间】:2019-07-03 22:58:45
【问题描述】:
我正在尝试验证 'cites' 数组中的项目数量,我该怎么做? 我想验证用户是否至少通知了一个城市。 我正在尝试使用“FormArray”验证,但无济于事
import { Component, OnInit } from '@angular/core';
import { FormGroup, FormArray, FormControl, Validators } from '@angular/forms';
@Component({
selector: 'app-validacao2',
templateUrl: './validacao2.component.html',
styleUrls: ['./validacao2.component.css']
})
export class Validacao2Component implements OnInit {
// tslint:disable-next-line:max-line-length
usuario: any = {nome: '', email: '', cites: [new FormControl('São Paulo', [Validators.required])]};
form = new FormGroup({
nome: new FormControl(this.usuario.nome, [Validators.required, Validators.minLength(4)]),
email: new FormControl(this.usuario.email, [Validators.required, Validators.email]),
cites: new FormArray(this.usuario.cites, [Validators.min(1)])
});
constructor() { }
get cites(): FormArray {
return this.form.get('cites') as FormArray;
}
adicionarCidade() {
this.cites.push(new FormControl('', [Validators.required]));
}
removerCidade(indice: number): void {
this.cites.removeAt(indice);
}
onSubmit() {
console.log(this.form.value);
}
ngOnInit() { }
}
【问题讨论】:
-
查看已回答的问题:stackoverflow.com/a/52125965/1168786
标签: angular