Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

angular 6 Error: Cannot activate an already activated outlet Error

Tags:

angular

rxjs

I want to redirect the user to a custom error page when a subscribe call to an observable throws an error. router.navigateByUrl('errorpage') I am getting the below error: ERROR Error: Uncaught (in promise): Error: Cannot activate an already activated outlet Error: Cannot activate an already activated outlet Thanks.

like image 319
nagesh mogallapu Avatar asked Mar 16 '26 05:03

nagesh mogallapu


1 Answers

Try this

@ViewChild(RouterOutlet) outlet: RouterOutlet;

constructor(
    private router: Router
) { }

ngOnInit(): void {
    this.router.events.subscribe(e => {
        if (e instanceof ActivationStart && e.snapshot.outlet === "errorpage")
            this.outlet.deactivate();
    });
}

Refrence:https://github.com/angular/angular/pull/20712

like image 96
Chellappan வ Avatar answered Mar 18 '26 02:03

Chellappan வ



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!