Resolvers#96
Merged
Merged
Conversation
d-koppenhagen
commented
May 15, 2026
Member
- Add comprehensive guide on Angular Resolvers for preloading data before route activation
- Document ResolveFn implementation with practical examples using BookStoreService
- Explain resolver registration in route configuration with resolve property
- Cover two approaches for accessing resolved data: ActivatedRoute and Component Input Binding
- Include error handling patterns with catchError and withNavigationErrorHandler
- Document dynamic page title resolution using resolvers
- Add performance considerations and best practices for when to use resolvers
- Provide complete code examples for common resolver patterns and use cases
- Add comprehensive guide on Angular Resolvers for preloading data before route activation - Document ResolveFn implementation with practical examples using BookStoreService - Explain resolver registration in route configuration with resolve property - Cover two approaches for accessing resolved data: ActivatedRoute and Component Input Binding - Include error handling patterns with catchError and withNavigationErrorHandler - Document dynamic page title resolution using resolvers - Add performance considerations and best practices for when to use resolvers - Provide complete code examples for common resolver patterns and use cases
…tices - Add detailed section explaining UX problems with Resolvers blocking navigation - Document alternative approaches using resource() API and AsyncPipe for immediate component display - Include practical code examples for reactive data loading patterns - Add section on valid use cases for Resolvers with cached configuration example - Provide recommendation guidance on when to use Resolvers vs reactive approaches - Clarify that Resolvers should be reserved for special cases where data preloading is essential
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
fmalcher
reviewed
May 15, 2026
Co-authored-by: Ferdinand Malcher <ferdinand@malcher.media>
- Replace AsyncPipe with `toSignal()` for Observable handling in component examples - Update template syntax to use Signal function calls instead of async pipe - Modernize ConfigService example to reflect current Angular patterns - Fix whitespace and formatting inconsistencies throughout the document - Align code examples with Signal-based reactive approach recommendations
- Update explanation of resolver return value handling to be more precise - Document supported return types: T, Observable<T>, and Promise<T> - Add clarification that synchronous values can be returned directly - Explain use case for synchronous returns when reusing cached data - Improve wording around subscription and promise resolution behavior
… inputs - Remove claim that resolver input approach is type-safe - Add explanation that compiler does not validate input type matches resolver return type - Clarify that type mismatches are only caught at runtime - Emphasize that resolver inputs accept any type without compile-time validation
fmalcher
reviewed
May 15, 2026
- Move UX problem section after resolver definition for better flow - Remove outdated best practices section and integrate guidance into narrative - Update code examples to use modern Signal API and consistent service naming - Simplify resolver return type explanation by removing redundant details - Change private field syntax from `#router` to `private router` for consistency - Update `BookStoreService` references to `BookStore` throughout examples - Improve narrative structure to emphasize when resolvers are appropriate vs. alternatives
Co-authored-by: Danny Koppenhagen <mail@d-koppenhagen.de>
fmalcher
reviewed
May 16, 2026
…atterns Switch examples to modern Angular conventions (`#` private fields, `protected readonly`), restructure with a dedicated "Resolver anlegen" section, and simplify the `ActivatedRoute` example via `snapshot.data`.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.