我有两个组件component A
和component B
,
在组件A中,我将HTTP请求发布到服务器并获得status =“success”的响应。在success
上,我使用状态='成功'的queryParams
导航到组件B.
在组件B中,我将检查构造函数(),如果我将queryParam's
值作为“成功”,那么我只想重新加载一次并重定向到下一个组件C.
我使用了location.reload()
,但我最终一次又一次地重新加载组件B.
有没有解决方法呢?
Component A
.subscribe(result => {
if(result.status == 'success'){
this.router.navigate(['/componentB'],{queryParams:{response: result.status}});
}
component B constructor(){
this._activatedRoute.queryParams.subscribe(
(queryParam: any) => this.response = queryParam['response']);
if(this.response == 'success'){
this.route.navigate(['/componentC']);
window.location.reload();
}
}
答案 0 :(得分:0)
导航到组件C,然后导航到要重新加载的组件。 //第二个参数_skipLocationChange=true
以避免后退按钮中的url
this.route.navigateByUrl('/componentC', true);