我有两个申请。 从一个应用程序我们将进入第二个应用程序。 从第一个申请
从第一次申请到第二次申请时,它会向第二次申请发送一些数据。
第二次申请 http://localhost:8080/myapp/#/login
基于第一个应用程序的URL prams,我们必须重定向到特定组件。
在角应用程序中的路线
{路径:'',pathMatch:'完整',redirectTo:' / login' }, {path:' **',pathMatch:' full',redirectTo:' / login' },
实现这一目标的最佳途径是什么?
答案 0 :(得分:1)
订阅路线事件,然后
ngOnInit() {
this.sub = this.route.params.subscribe(params => {
this.id = +params['id']; // (+) converts string 'id' to a number
// apply you condition here{
this.router.navigateByUrl(['show_alunos']);
}
});
}
如果您想阅读详细说明,可以阅读本主题 使用具有良好主题的click here
另外,配置路由文件
RouterModule.forRoot([
{ path: 'login', component: LoginComponent },
{ path: 'nomination', component: HomeComponent }
])
尝试使用NavigationEnd
previousUrl: string;
constructor(router: Router) {
router.events
.filter(event => event instanceof NavigationEnd)
.subscribe(e => {
console.log('prev:', this.previousUrl);
this.previousUrl = e.url;
});
}
答案 1 :(得分:0)
如果您在第二个应用程序中设置了路由,Angular Router将自行完成工作。
如果在您的第二个应用程序中,您的配置与此类似:
RouterModule.forRoot([
{ path: 'login', component: LoginComponent },
])
您可以使用以下链接重定向用户: http://secondapplink.com/login
然后,Angular路由器将自行查找并呈现Login组件。
当然,在部署应用程序的生产环境中,您必须设置URL重写,以免最终出现错误。在开发模式中,您不必担心这一点。