Angular 5: remove route history

烈酒焚心 提交于 2019-12-18 18:59:46

问题


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.


回答1:


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

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



回答2:


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();


来源:https://stackoverflow.com/questions/51427689/angular-5-remove-route-history

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!