bug(mat-chip-option): selected CSS classes are not applied in a specific case
- Vorherrschende Sprache
- TypeScript
- Sterne
- 25k
- Forks
- 6.8k
- Ø Merge
- 1 T. 8 Std.
- Gemergte PRs (30 T.)
- 91
Beschreibung
### Is this a regression?
- [ ] Yes, this behavior used to work in the previous version
### The previous version in which this bug was not present was
_No response_
### Description
When the selected property changes, there is a case where the selected CSS classes are not applied.
I have an application where we have a list of selectable teams and the possibility to filter them by gender (male or female). By default the 1st team is selected. On this app, we also want the selected team to be changed to the first matching the current filter if the currently selected team does not match the filter.
To illustrate the bug and show that the property that is passed to the mat-chip-option is indeed updated I have also set the disabled attribute with the same property as selected to show that this one works properly.
### Reproduction
StackBlitz link: https://stackblitz.com/~/github.com/FabienCH/mat-chip-option-selected
- When changing the gender filter (unselect male) without changing the selected team, the selected CSS classes are applied to the selected team (team 1 female).
- When changing the selected team by clicking on an option the selected CSS classes are applied.
Steps to reproduce:
1. Change the selected team by clicking on an option (click on a male team for example)
2. Change the gender filter (unselect male) => the selected CSS classes are not applied
You can see that the selected property of the option is true and the disabled CCS classes are applied
### Expected Behavior
The selected CSS classes should be applied.
### Actual Behavior
The selected CSS classes are not applied.
### Environment
- Angular: 20.1
- CDK/Material: 20.1
Beitragsleitfaden
Rechercherichtung
Beginne damit, die verknüpfte StackBlitz-Reproduktion auszuführen, und untersuche das Verhalten von mat-chip-option, wenn sich das ausgewählte Team ändert, nachdem nach Geschlecht gefiltert wurde. Vergleiche die selected- und disabled-CSS-Klassen während beider Reproduktionsschritte; als erledigt gilt die Aufgabe, wenn die selected-CSS-Klassen angewendet werden, sobald sich die selected-Eigenschaft durch das Filtern ändert, ebenso wie nach dem Klicken auf eine Option.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- angular, typescript
- Bereich
- frontend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100