从角度删除历史记录中的组件2

从角度删除历史记录中的组件2

问题描述:

我怎样才能限制组件加载回来按下。 其实我有三个组件A(正常组件),B(LoginComponent)和C(Otp验证组件)。 我在点击某个按钮并从B到C验证用户时,从A路由到组件B. 现在在对组件C进行验证后,我想回到组件'A',并且想要从历史中删除组件'B'和'C',以便在从浏览器按回来时它不加载'B'(LoginComponent )和'C'。 所以我怎么能在angularjs 2中做到这一点。从角度删除历史记录中的组件2

+0

我想你可以使用路线警卫。 [RouteGuards](https://angular.io/docs/ts/latest/guide/router.html#!#guards) –

+0

它们允许您挂钩组件生命周期,让您可以取消导航。 –

从组件B和C导航时,通过选项replaceUrl:true在浏览器历史记录中将B替换为C.

如:

//Navigating to state C 
this.router.navigate(["/C"], { replaceUrl: true }); 

结帐的documentation for replaceUrl