Skip to content

Resolvers#96

Merged
d-koppenhagen merged 10 commits into
mainfrom
resolver
May 17, 2026
Merged

Resolvers#96
d-koppenhagen merged 10 commits into
mainfrom
resolver

Conversation

@d-koppenhagen

Copy link
Copy Markdown
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
@d-koppenhagen d-koppenhagen changed the title feat(material): Add resolvers article with routing data preloading guide Resolvers May 15, 2026
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md
Comment thread material/resolvers/README.md Outdated
Comment thread material/resolvers/README.md Outdated
d-koppenhagen and others added 4 commits May 15, 2026 22:14
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
Comment thread material/resolvers/README.md Outdated
- 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
@d-koppenhagen d-koppenhagen requested a review from fmalcher May 15, 2026 20:25
Co-authored-by: Danny Koppenhagen <mail@d-koppenhagen.de>
Comment thread material/resolvers/README.md Outdated
fmalcher added 2 commits May 16, 2026 23:00
…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`.
@d-koppenhagen d-koppenhagen merged commit cfaf532 into main May 17, 2026
@d-koppenhagen d-koppenhagen deleted the resolver branch May 17, 2026 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants