Agent-skills-standard angular-routing
Configure Angular Router with lazy-loaded routes, functional guards, and component input binding. Use when defining routes, lazy-loading features, creating route guards, or setting up resolvers. (triggers: *.routes.ts, angular router, loadComponent, canActivate, resolver)
install
source · Clone the upstream repo
git clone https://github.com/HoangNguyen0403/agent-skills-standard
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/HoangNguyen0403/agent-skills-standard "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/angular/angular-routing" ~/.claude/skills/hoangnguyen0403-agent-skills-standard-angular-routing && rm -rf "$T"
manifest:
skills/angular/angular-routing/SKILL.mdsource content
Routing
Priority: P0 (CRITICAL)
1. Lazy Load All Feature Routes
- Use
(standalone) orloadComponent
(route file) for every feature route.loadChildren
See routing patterns for lazy loading and guard examples.
2. Use Functional Guards
- Create function-based guards (
) instead of deprecated class-based guards.CanActivateFn
See routing patterns for functional guard implementation.
3. Enable Component Input Binding
- Configure
inwithComponentInputBinding()
.provideRouter(routes, withComponentInputBinding()) - Define
in components — Angular auto-maps route params, query params, and resolve data.input.required<string>()
4. Configure Resolvers and Titles
- Create
to pre-fetch critical data before navigation.ResolveFn<T> - Provide custom
or useTitleStrategy
in route data.title: 'Dashboard'
Anti-Patterns
- No logic in route config: Move access control and data fetching to dedicated Guards and Resolvers.
- No eager feature imports: Use
orloadComponent
for all feature routes.loadChildren