Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

178
Vistas
cómo validar el campo de entrada que contiene el objeto

¿Cómo puedo verificar que el campo de entrada requerido no esté vacío? FormControl no puede leer el objeto...

 public discountParamsForm = new FormGroup({ name: new FormControl('', Validators.required), type: new FormControl('', Validators.required), status: new FormControl('', Validators.required), value: new FormControl('', [Validators.required, Validators.pattern(/^([0-9]{1,2}){1}(\.[0-9]{1,2})?$/), Validators.min(1), Validators.max(100)]), dateInput: new FormControl('', Validators.required), categorySelect: new FormControl('', Validators.required) });

 <input formControlName="dateInput" fullWidth type="text" [(ngModel)]="dateRange" nbInput placeholder="{{pickDateUI}}" [nbDatepicker]="datepicker"> <nb-rangepicker (rangeChange)="onDateChange($event)" format="yyyy-MM-dd" #datepicker></nb-rangepicker>

console.log para valor y descuentoparamsform

interfaz de usuario

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

nunca, nunca use en la misma etiqueta [(ngModel)] y formControlName

Bueno, usa un Validador personalizado .

 discountParamsForm = new FormGroup({ ... dateInput: new FormControl('', this.validatorRange()), }) validatorRange(){ return (control:AbstractControl)=>{ if (!control.value.start) return {error:'start date is mandatory'} if (!control.value.end) return {error:'end date is mandatory'} } }

Vea que el control siempre es un objeto con propiedades "inicio" y "fin" -por lo que siempre tiene valor, por lo que en el validador personalizado verificamos si esta propiedad tiene valor o no-

about 4 years ago · Juan Pablo Isaza Denunciar

0

Un par de cosas aquí, estás mirando el objeto de formulario en sí. Puede ver en la imagen de la consola, el formulario completo es INVALID .

Si desea ver si hay un campo en un formulario, puede usar el método get.

en tu componente

 this.discountParamsForm.get('name');

esto devuelve un objeto FormControl y tiene valores como válido/no válido y muchos otros usan indicadores completos.

puede agregar un método getter en su componente para verificar esto en su html.

 get name() { return this.discountParamsForm.get('name'); }
 <input [ngClass]="{'my-invalid-class': name.invalid}"

dado que tenemos un método getter, no necesitamos verificar el formulario directamente y podemos acceder fácilmente al control dentro del formulario principal.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda