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

1.2K
Vistas
Diferencia entre .value y .setValue en formularios reactivos en Angular 7+

Me gustaría entender completamente cuáles son las diferencias entre .value y .setValue en angular 7+ y en qué circunstancias son adecuadas para usar .value o .setValue.

Ejemplo 1: this.createLocForm.setValue(data);

Ejemplo 2: this.data = this.createLocForm.value

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

setValue y patchValue son métodos de Angular FormGroup. Ambos establecen el valor de un control en un FormGroup. Pero el value se usa para obtener un valor, no para establecerlo . La diferencia entre set/patch es que setValue no puede excluir algunos controles, mientras que patchValue puede hacer precisamente eso.

Supongamos que tenemos un FormGroup con dos controles: name y age . Si queremos establecer el valor de un control, esto no funcionará, por lo tanto, debemos establecer el valor de ambos controles:

 formgroup.setValue({name: 'Mocrosoft', age: '25'});

Es necesario mencionar todos los controles dentro del método. Si esto no se hace, arrojará un error.

Por otro lado patchValue es mucho más fácil en esa parte. Digamos que solo queremos asignar el nombre como un nuevo valor:

 formGroup.patchValue({name:'Mocrosoft'});
over 4 years ago · Santiago Trujillo Denunciar

0

Ejemplo 1: this.createLocForm.setValue(datos);

Utilice el método setValue() para establecer un nuevo valor para el control individual. El método setValue() se adhiere estrictamente a la estructura del grupo de formularios y reemplaza el valor completo del control. Por favor lea esto para más detalles

Ejemplo 2: this.data = this.createLocForm.value

Esta es una propiedad de solo lectura . No puede asignar ningún valor a esta propiedad. Solo puede leer los valores de control usando esta propiedad.

over 4 years ago · Santiago Trujillo Denunciar

0

Ambos son completamente diferentes:

.setValue() es una función que solía:

Sets the value of the FormGroup. It accepts an object that matches the structure of the group, with control names as keys.

Por ejemplo:

Si usted tiene:

 const formGroup = new FormGroup({ name: new FormControl(), mobileNo: new FormControl() });

entonces su setValue:

 formGroup.setValue({name: 'Prashant', mobileNo: '99XXXXXXXX'});

En el caso del siguiente código, no funcionará:

 formGroup.setValue({full_name: 'Prashant', mobileNumber: '99XXXXXXXX'}); -- The keys are important for set value

o

 formGroup.setValue({ name: 'Prashant'}); -- Will not work as it is missing mobileNo key from the specified object

.value es una propiedad:

que solía obtener/acceder al valor de formGroup.

over 4 years ago · Santiago Trujillo 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