在写登录跳转的时候遇到这个报错:
Error: Cannot match any routes.
url没有问题,是直接用的state.url传参做跳转:
this.router.navigate(['login'], { queryParams: { returnUrl: state.url }});
但是在login成功后无法跳转路由:
this.router.navigate(this.return_url);
网上找的方法试过都不靠谱,最后发现是url中有特殊字符,用navigate()方法会解析特殊字符,应当用navigateByUrl()方法跳转:
this.router.navigateByUrl(this.return_url);