显示两个用户的数据从ionic/angular的同一页面中被拉出的问题



所以我目前正在研究离子和角。我使用离子段(艺术家和场地)在单个页面上显示2种不同类型的用户。两个用户的信息按照我想要的方式显示在卡片上。当我点击艺术家的个人资料,它被显示,但当我点击场地用户,它显示的HTML从艺术家没有数据。场地配置文件的id是正确的,只是当它被带到配置文件它不工作的方式我想要的。我觉得问题可能出在应用程序路由上?但我不确定,因为我试过改变它,它仍然不工作。

discover.page.html:

<ion-card
*ngFor="let venue of relevantVenue.slice(1)"
fill="clear"
[routerLink]="['/','tabs','tab1','discover',venue.id]"
>

venue-details:

ngOnInit() {
this.route.paramMap.subscribe(paramMap => {
if (!paramMap.has('venueId')) {
this.navCtrl.navigateBack('/tabs/tab1/discover');
return;
}
this.venueSub = this.venueService
.getVenue(paramMap.get('venueId'))
.subscribe(venue => {
this.loadedVenue = venue;
});
});
}
ngOnDestroy() {
if (this.venueSub) {
this.venueSub.unsubscribe();
}
}

tabs-routing.module.ts:

const routes: Routes = [
{
path: '',
component: TabsPage,
children: [
{
path: 'tab1',
children: [
{
path: '',
loadChildren: () => import('../tab1/tab1.module').then(m => m.Tab1PageModule)
},
{
path: 'discover/:artistId',
loadChildren: () => import('../tab1/discover/artist-details/artist-details.module').then(m => m.ArtistDetailsPageModule)
},
{
path: 'discover/:venueId',
loadChildren: () => import('../tab1/discover/venue-details/venue-details.module').then(m => m.VenueDetailsPageModule)
}
]
},

当我点击艺术家配置文件时,它被显示,但是当我点击场地用户,它将显示来自艺术家的HTML没有数据

你能给我们展示一下它的屏幕外观吗?尝试使用ngif来打开/关闭html块,以强制webview动态检索数据。还要从ts文件中执行控制台日志,以确认实际接收到的数据。

路径:"发现/:artistId">

路径:"发现/:venueId">

这些路径都使用相同的父节点(父节点是" discovery "。因此,在路线上存在冲突。当发现-artist时/discover-venue应该没问题。

完成后更改:

[routerLink] ="(‘/’、‘标签’、‘tab1’,‘发现’,venue.id]">

:

[routerLink] ="(‘/’、‘标签’、‘tab1’,‘discover-venue’,venue.id]">

和discovery -artist

相同

最新更新