bug(MatFormFieldControl, MatInput): enable empty value for element attributes
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 56/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Calme
- Stack technique
- angular, typescript
- Domaine
- frontend
Piste de recherche
Commencez par la reproduction StackBlitz et examinez les déclarations TypeScript de MatInput ainsi que les implémentations de MatFormFieldControl mentionnées dans l’issue. Confirmez le comportement pour un placeholder vide, maxlength, required et les attributs associés, puis ajoutez ou mettez à jour la couverture afin que null et undefined soient acceptés de manière cohérente.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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
21
Description
Recent TypeScript 6 flashes out discrepancies in attributes declaration for html/material controls.
For MatInput, as for other controls, TypeScript doesn't allow empty (null or undefined) values.
The required, placeholder, etc. forces strict datatype while others such as autocomplete are optional.
Previous Angluar version 21 handled these cases correct, for example, placeholder in MatFormField.
In my view, all MatFormFieldControl attributes should be optional, to reflect HTML tag design by definition.
It's common to forward optional attributes between components that holds undefined value; forcing an issue when refering to HTML tag such as input with Angular decoration.
Reproduction
StackBlitz link: https://stackblitz.com/edit/components-issue-starter-ffzyyuuu?file=src%2Fmain.ts
Steps to reproduce:
See errors for empty placehoder and missing maxlength.
Expected Behavior
Attributes such as placeholder should accept null and undefined.
This should be common among all MatFormFieldControl implementations.
Actual Behavior
Common attributes doesn't allow empty values.
Environment
Angular CLI : 22.0.0
Angular : 22.0.0
Node.js : 24.16.0
Package Manager : npm 11.16.0
Operating System : win32 x64
- Langage dominant
- TypeScript
- Étoiles
- 25k
- Forks
- 6.8k
- Merge moyen
- 1 j 1 h
- PR mergées (30 j)
- 84
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de angular/components
-
area: material/tree docs gemini-triaged needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
angular/components#33832 ·
-
area: material/datepicker gemini-triaged P4
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
angular/components#33763 · 2 commentaires · 3 réactions ·
-
area: material/table gemini-triaged P4
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
angular/components#33709 · 1 commentaire ·
-
area: material/table docs gemini-triaged P4
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
angular/components#33455 ·
-
area: material/core gemini-triaged P3
Difficulté 1/5 Moins d'une heure Accessibilité débutants 78/100
angular/components#33059 · 2 commentaires ·
Toutes les issues de angular/components
Issues similaires
-
bug(cli): hapi doctor inline-media prints a fabricated B:\ helper-script path in packaged installs Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
Crush Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
catppuccin/catppuccin#3125 ·
-
Add a SECURITY.md Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
ElementsProject/cln-application#167 · 1 commentaire · 1 réaction ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Quantco/pnpm-licenses#17 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100