Немного о резолверах в Angular 19 (теперь в них есть редиректы).
В логике использования гвардов применяется подход:
проверить что-то, если все ок то вернуть true или кинуть редирект на другую страницу
Выглядит достаточно удобно. Но если мне не изменяет память в резолверах такого нет, вместо этого приходилось натягивать Router и рулить navigate или navigateByUrl и т.д.
В 19 же версии нам немного упростили жизнь и резолвер научили в RedirectCommand.
Пример с angular.dev
export const heroResolver: ResolveFn<Hero>= async ( route: ActivatedRouteSnapshot, state: RouterStateSnapshot, ) => { const router = inject(Router); const heroService = inject(HeroService); try { return await heroService.getHero(route.paramMap.get('id')!); } catch { return new RedirectCommand(router.parseUrl('/404')); } };
Ну просто сказка какая-то, а не только сигналы =)
