Angular 角度路由:从不同的路由器链路调用同一模块(或组件)上的不同功能
我有一个名为Items的模块,我导航到它的Items.Component.ts形成许多路由器链接。要跟踪我们来自哪个页面,可以通过路由器路径传递idAngular 角度路由:从不同的路由器链路调用同一模块(或组件)上的不同功能,angular,angular4-router,Angular,Angular4 Router,我有一个名为Items的模块,我导航到它的Items.Component.ts形成许多路由器链接。要跟踪我们来自哪个页面,可以通过路由器路径传递id this.router.navigate(['/items',id passed along with); 但是我想根据我之前的ngOnit()页面调用不同的函数。 如果我从菜单导航,我想调用itemscomponent中的函数A 如果我从类别导航,则为B 还可以从模块(或组件)html文件或component.ts(视图模型)进行所需的导航 如
this.router.navigate(['/items',id passed along with);
但是我想根据我之前的ngOnit()页面调用不同的函数。
如果我从菜单导航,我想调用itemscomponent中的函数A
如果我从类别导航,则为B
还可以从模块(或组件)html文件或component.ts(视图模型)进行所需的导航
如何在angular中实现这一点?您可以使用queryParams,从菜单页发送1,从类别发送2,导航后,您可以执行与查询参数相关的功能
this.router.navigate(['/items'],id, { queryParams: { functionToexecute: 1 } });
在您的项目组件中:
constructor(
private route: ActivatedRoute,
private router: Router) {}
ngOnInit() {
this.route
.queryParams
.subscribe(params => {
if (params['functionToexecute'] === 1){ call functionA} else{call
function B}
});
}