pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/angular/angular/pull/67691

ets/global-68dd150ce6c8e711.css" /> feat(forms): add hasError to signal forms field state by adam-l · Pull Request #67691 · angular/angular · GitHub
Skip to content

feat(forms): add hasError to signal forms field state#67691

Open
adam-l wants to merge 2 commits intoangular:mainfrom
adam-l:feat/signal-forms-has-error
Open

feat(forms): add hasError to signal forms field state#67691
adam-l wants to merge 2 commits intoangular:mainfrom
adam-l:feat/signal-forms-has-error

Conversation

@adam-l
Copy link

@adam-l adam-l commented Mar 15, 2026

Add a hasError(kind) helper to Signal Forms field state.

This makes it easier to check for specific validation errors in templates without
depending on positional access to errors(), such as errors()[0] or
errors()[1].

The new helper helps avoid "magic numbers" when rendering validation messages.

Closes #66624
Related to #63905

PR Checklist

Please check if your PR fulfills the following requirements:

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • CI related changes
  • Documentation content changes
  • angular.dev application / infrastructure changes
  • Other... Please describe:

What is the current behavior?

Signal Forms field state exposes errors(), but it does not provide a direct way to check whether a field currently has a validation error of a specific kind.

As a result, templates may need to inspect the returned error array directly, which can lead to patterns that depend on error ordering and the use of "magic numbers" such as errors()[0] and errors()[1].

Issue Number: N/A

What is the new behavior?

Signal Forms field state now provides a hasError(kind) helper that returns whether the field currently has a validation error of the given kind.

This allows templates to check for specific validation errors directly and helps avoid "magic numbers" when rendering validation messages.

Does this PR introduce a breaking change?

  • Yes
  • No

@pullapprove pullapprove bot requested a review from JeanMeche March 15, 2026 02:21
@angular-robot angular-robot bot added detected: feature PR contains a feature commit area: forms labels Mar 15, 2026
@ngbot ngbot bot added this to the Backlog milestone Mar 15, 2026
@adam-l adam-l force-pushed the feat/signal-forms-has-error branch 2 times, most recently from eea5413 to 826ca61 Compare March 16, 2026 22:27
adam-l added 2 commits March 16, 2026 23:38
Add a `hasError(kind)` helper on Signal Forms field state.

This avoids relying on positional access to `errors()`, such as `errors()[0]`,
when rendering validation messages in templates and brings the API closer to
the `hasError()` helper available on reactive forms controls.

Closes angular#66624
Related to angular#63905
Add coverage for the new `hasError(kind)` helper on Signal Forms field state.

Verify that it returns true for matching error kinds and false otherwise,
including when multiple validation errors are present.
@adam-l adam-l force-pushed the feat/signal-forms-has-error branch from 826ca61 to 75005c3 Compare March 16, 2026 23:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Feature Request: "hasError" for Signal Forms in order to avoid the problem of "magic numbers"

2 participants

pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy