如何在angular 7中从routerLink传递对象

如何在angular 7中从routerLink传递对象,angular,Angular,单击超链接时,我将在“新建”选项卡中打开员工详细信息 <a [routerLink]="['/employee','details',{name:employee.empName}]" target="_blank" ></a> 在服务中,我访问如下所示 resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> | Promise<any&

单击超链接时,我将在“新建”选项卡中打开员工详细信息

<a [routerLink]="['/employee','details',{name:employee.empName}]" target="_blank" ></a>

在服务中,我访问如下所示

resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> | Promise<any> | any {
     this.name = route.params.name;
}
resolve(路由:ActivatedRouteSnapshot,状态:RouterStateSnashot):可观察的|承诺|任何{
this.name=route.params.name;
}
通过使用上面的代码,我可以得到雇员的名字,但我想传递完整的雇员对象。 并且数据正在附加到url
https://localhost:4200/employee/details;name=xxxx
,我不想在Url中附加它


如果我通过转换为字符串来传递employee对象,我会在url中获取数据,但会获取“找不到页面”,因为我在该对象中有一些链接

我认为使用
路由器链接
无法实现您想要的功能。解决方案是获取员工的
uuid
,并将其附加到链接中。您的链接如下:
https://localhost:4200/employee/details/123456789

然后通过
uuid
检索用户。这是目前最好的解决方案

我认为使用
routerLink
无法实现您想要的东西。解决方案是获取员工的
uuid
,并将其附加到链接中。您的链接如下:
https://localhost:4200/employee/details/123456789

然后通过
uuid
检索用户。这是目前最好的解决方案

我认为你在混合两种不同的方式。和

如果您使用的是路由器解析器,则需要使用resolve param正确配置路由,并且resolve方法必须返回一个值。数据将通过
ActivatedRoute.data
传递到组件

/*路由配置*/
{路径:'routePath',组件:someComponent,解析:{person:PersonService},
/*PersonService中的解析方法*/
解析(路由:ActivatedRouteSnapshot,状态:RouterStateSnashot){
返回此.personData;
}
/*在组件中获取人员*/
this.activatedRoute.data.subscribe(数据=>{
this.person=data.person;

});我认为你在混合两种不同的方式。和

如果您使用的是路由器解析器,则需要使用resolve param正确配置路由,并且resolve方法必须返回一个值。数据将通过
ActivatedRoute.data
传递到组件

/*路由配置*/
{路径:'routePath',组件:someComponent,解析:{person:PersonService},
/*PersonService中的解析方法*/
解析(路由:ActivatedRouteSnapshot,状态:RouterStateSnashot){
返回此.personData;
}
/*在组件中获取人员*/
this.activatedRoute.data.subscribe(数据=>{
this.person=data.person;

});传递此人的唯一标识符,并通过此唯一标识符获取此人的详细信息。就像,当你点击StackOverflow主页上的问题时,你会看到一个URL
https://stackoverflow.com/questions/57567816
。请参阅,从Angular 8中,您可以传递处于状态的对象,请参阅,例如,传递此人的唯一标识符,并通过此唯一标识符获取此人的详细信息。就像,当你点击StackOverflow主页上的问题时,你会看到一个URL
https://stackoverflow.com/questions/57567816
。参见,从角度8可以通过处于状态的对象,参见,例如。