The Angular CanActivate guard decides, if a route can be activated, this is because canActivate looks for all guards return true for navigation to continues.
If any guard returns a UrlTree ( route serialized state ), the current navigation is cancelled and a new navigation begins to the UrlTree returned from the guard.
More Info here
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…