fix(label): only apply error appearance when control is touched #24072
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull request checklist
Please check if your PR fulfills the following requirements:
npm run build
) was run locally and any changes were pushednpm run lint
) has passed locally and any fixes were made for failuresPull request type
Please check the type of change your PR introduces:
What is the current behavior?
Currently the Material design appearance of an invalid
ion-label
in anion-item
, is applying the error appearance; even though the control has not been interacted with.Issue Number: #24049
What is the new behavior?
Fixes the change introduced within this PR.
Does this introduce a breaking change?
Other information
Display state of item when
ion-invalid
is initially set.I'm unsure of the implications with React/Vue. As far as I know, they don't have a form integration coupled with Ionic. This change is technically only necessary for Angular implementations, unless React/Vue are manually managing
ion-touched
on theion-item
.I could see it being advantageous to leave the web component alone and approach fixing this issue from the framework side, so the value accessor would instead apply
ion-invalid
when the control is invalid and dirty. Let me know if that would be a better fit to align with React/Vue as well.