HisDivineShadow
HisDivineShadow

Reputation: 1148

In Angular, how to remove the current route from history on navigation?

In my app I have a category page that has links to a various product list pages. If it turns out that when you get to a product list page there is only one product then it automatically navigates to that product detail page. What I want is to remove the product list page route in the history so that when the user is on the product detail page and hits the back button they will go to the category page and not the product list page because that will just redirect them back to the detail page.

Upvotes: 54

Views: 47062

Answers (2)

Victor
Victor

Reputation: 1159

If using the $location object in order to switch views, a way of doing the same as in @alt255 's post is by using the replace() method after calling path("..."):

$location.path("/").replace();

Upvotes: -7

alt255
alt255

Reputation: 3566

You can use angular routers replaceUrl flag to do this. See api docs for more details here

this.router.navigate(['/view'], { replaceUrl: true });

Upvotes: 124

Related Questions