Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

284
Views
Redirigir si Resolve falla Angular 2

¿Cómo puedo redirigir a otra página si la resolución falla en Angular 2? Llamo a esta resolución para mi página de edición, pero quiero manejar los errores en la página de resolución

Mi determinación:

 resolve(route: ActivatedRouteSnapshot): Promise<any>|boolean { return new Promise((resolve, reject) => { if (route.params['id'] !== undefined) { this.dataService.getHttpEmpresaShow(this.endpoint_url_Get + route.params['id']) .subscribe( result => { console.log("ok"); return resolve(result); }, error => { return resolve(error); }); }});
about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Al igual que en los documentos , llame a this.router.navigate(["url"]) ... (piense en inyectar Router en su constructor)

 class MyResolve { constructor(private router: Router) {} resolve(route: ActivatedRouteSnapshot): Observable <any> { return this.dataService.getHttpEmpresaShow(this.endpoint_url_Get + route.params['id']) .pipe(catchError(err => { this.router.navigate(["/404"]); return EMPTY; })); } }
about 4 years ago · Santiago Trujillo Report

0

Otra solución, si desea aplicar una estrategia de redirección después de fallar en TODOS sus resolutores, puede interceptar un evento de enrutador y aplicar la redirección en un evento fallido. Aquí el código que puede agregar en su AppComponent:

 import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; import { Router, RouterEvent, NavigationError } from '@angular/router'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'] }) export class AppComponent implements OnInit { constructor( private router: Router, private cdr: ChangeDetectorRef ){} ngOnInit() { this.router.events.subscribe((event: RouterEvent) => { this.navigationInterceptor(event) }); } navigationInterceptor(event: RouterEvent): void { if (event instanceof NavigationError) { this.router.navigate(["error"],{ queryParams: { redirect: event.url } }); } this.cdr.detectChanges(); } }
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!