【发布时间】:2020-12-30 17:04:03
【问题描述】:
我有一个组件,它有一个 ngFor 指令循环遍历一组用户,另一个 ngFor 指令循环遍历用户正在发布的所有帖子。我在此元素中有一个视图链接,呈现我的两个 ngFor 循环,我希望能够单击此视图链接并查看用户和相关帖子的详细视图。但是我不确定这是否可能。现在查看链接有效,它带我到页面并显示用户和列表项,问题是当您单击列表中的下一个项目以查看它的详细信息时,用户错误或有问题的帖子是错误的。在我的路由中,我有一条路由转到我想显示以 :/.. 结尾的详细视图的页面,在列出用户及其帖子的组件中,我有一个看起来像这样的视图链接。
<a mat-button routerLinkActive [routerLink]="['/city-care/view-request/', request.id]">View</a>.
是否可以在用户单击此链接时获得与其相关联的请求的详细视图以及正确的用户?现在我正在按请求导航,并且路线的快照仅适用于请求。我将如何完成这项任务?任何建议将不胜感激。
我的列表组件
<mat-accordion multi="true" *ngIf ="!isLoading && userIsAuthenticated">
<h3>All User Requests</h3>
<mat-expansion-panel class='panel' *ngFor="let user of users">
<mat-expansion-panel-header *ngIf="user.requests.length > 0">
<mat-panel-title>
<p>Name: {{ user.first_name }} {{ user.last_name }}</p>
</mat-panel-title>
</mat-expansion-panel-header>
<mat-panel-description *ngFor="let request of user.requests">
<p class='left-align'>Request: {{ request.name }} <br>
{{request.details}}</p>
<div class="col sm6 right-align">
<a mat-button routerLinkActive [routerLink]="['/city-care/view-request/', request.id,
user.id]">View</a>
</div>
</mat-panel-description>
</mat-expansion-panel>
</mat-accordion>
我的详细视图组件。
<div *ngIf="request && user && !isLoading && userIsAuthenticated">
<div class="card">
Contact Person: {{user.first_name}} {{user.last_name}} <br>
Email: {{ user.email }} <br>
Phone: {{ user.phone }} <br>
Mobile: {{ user.mobile_phone }} <br>
<hr>
Need: {{ request.name }} <br>
Details: {{ request.details }}<br>
Date Needed: {{ request.needByDate | date }} <br>
</div>
</div>
<div class="col sm6 right-align">
<button class="waves-effect waves-light btn back" routerLink="/city-care/site-
postings">Back</button>
</div>
这是我的路线
{ path: 'city-care/view-request/:id', component: ViewRequestComponent, canActivate: [ AuthGuard
] },
在详细视图组件ts文件中我调用路由快照查看详细信息,如何在同一页面上同时显示用户详细信息和问题详细信息中的请求的预期结果?
【问题讨论】:
标签: angular typescript express routes