Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.5K
Views
El material angular mat-radio-group no permite el valor predeterminado con ngModel

Actualmente estoy luchando con una implementación más compleja usando mat-radio-group. Actualicé mi versión de Angular de 10 a 13 y ahora ya no se reconoce un valor predeterminado en un mat-radio-group.

Para mantenerlo simple, puede reproducirlo con el ejemplo de Angular Material: https://material.angular.io/components/radio/examples

Use el stackblitz de "Radios con ngModel". Desafortunadamente no pude bifurcarlo. Luego intente configurar "Invierno" como predeterminado. No se comprobará después de volver a compilar.

¿Es la única forma de evitar esto usando la propiedad [marcada]? ¿Qué cambió Angular para cambiar este comportamiento?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

El atributo checked para configurar el botón de opción predeterminado ha estado allí todo el tiempo, según recuerdo, al menos desde Material 9.x (y posiblemente antes).

Puedes intentar lo siguiente:

En tu código TS:

Establezca su selección de temporada favorita en un valor de cadena constante:

 favoriteSeason: string = 'Spring';

Luego, en su HTML, configure el atributo checked en el ciclo ngFor para cada control mat-radio-button siguiente manera:

 [checked]="favoriteSeason == season"

Entonces, su grupo de radio se verá como se muestra:

 <mat-radio-group aria-labelledby="example-radio-group-label" class="example-radio-group" [(ngModel)]="favoriteSeason"> <mat-radio-button class="example-radio-button" *ngFor="let season of seasons" [value]="season" [checked]="favoriteSeason == season"> {{ season }} </mat-radio-button> </mat-radio-group>

Lo anterior debería darle la selección predeterminada deseada.

Editar: es posible que haya experimentado con lo anterior y haya descubierto que la condición checked no es necesaria si establecemos el valor inicial en nuestro código TS.

Prueba lo siguiente:

En su código TS, no asigne la variable vinculante. Déjalo así:

 favoriteSeason: string;

A continuación, agregue el siguiente botón HTML:

 <button (click)="setValue()">Press Here</button>

Ahora, defina el evento de clic de botón setValue como se muestra:

 setValue() { this.favoriteSeason = 'Autumn'; }

Cuando se ejecuta lo anterior, no hay selección inicial. ¡Al hacer clic en el botón, la estación se establecerá en 'Autumn' !

Lo anterior muestra que puede establecer la selección de radio predeterminada utilizando el código o con el atributo marcado.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!