Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

236
Visualizações
Valor de control de formulario de actualización de Angular2

Tengo un problema al crear formularios angulares2 dinámicos con controles y cuadros de selección, por ejemplo, este plunker :

 <select class="form-control" ngControl="power"> <option *ngFor="#p of powers" [value]="p">{{p}}</option> </select>

Puedes seleccionar un poder de héroe y el control tendrá el mismo valor. Pero si presiona Change Powers , el valor seleccionado será nulo pero el valor de control seguirá siendo el valor anterior. Creo que este es un problema grave, ya que es una fuente de muchos errores cuando el formulario muestra una cosa, pero en realidad enviará algo diferente, ¿hay alguna forma de actualizar el contenido del control? Existe updateValue() pero debe establecer manualmente el valor en todos esos casos.

También hay un caso similar cuando actualiza las opciones del cuadro de selección después de la creación del formulario, mostrará un valor seleccionado en el cuadro seleccionado, mientras que el valor de control sería nulo, ¿alguna idea sobre cómo lidiar con esto?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

En Angular 2 Final (RC5+) hay nuevas API para actualizar los valores del formulario. El método API patchValue() admite actualizaciones de formularios parciales, donde solo necesitamos especificar algunos de los campos:

 this.form.patchValue({id: selected.id})

También existe el método API setValue() que necesita un objeto con todos los campos del formulario. Si falta un campo, obtendremos un error.

over 4 years ago · Santiago Trujillo Relatório

0

Actualizar

a partir de la última actualización de la sintaxis angular2 será así

 this.form.controls['power'].setValue('anthing here');
over 4 years ago · Santiago Trujillo Relatório

0

Actualmente, esto es lo único que puede hacer (como se menciona en la pregunta)

 this.form.controls['power'].updateValue(null);

Hay un problema abierto para permitir restablecer un formulario https://github.com/angular/angular/issues/4933

También hay una solicitud de extracción, pero eso también le permite hacerlo "manualmente" para cada control, pero también permite restablecer estados como prístino, tocado, ... https://github.com/angular/angular/pull/6679

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda