Я пытаюсь передать некоторые параметры запроса с угловым маршрутизатором без успеха.
У меня есть следующее:
getTrainServiceDetails(row: TrainService) {
const navExtras: NavigationExtras = {
queryParamsHandling: 'preserve',
queryParams: {
headCode: row.headCode.toString(),
stoppingPattern: row.stoppingPattern.toString(),
instances: row.instances.toString()
}
};
this.router.navigate(['/stats', 'journeyInfo'], navExtras).finally(() => {
// We close the dialog here to ensure it doesnt redirect back
this.dialog.closeAll();
});
Затем попробуйте получить доступ к этому откуда-то еще, чтобы получить этот запроспараметры, однако они даже не добавляются к URL, который является моим URL-адресом localhost / stats / tripInfo без параметров запроса. Я что-то здесь упустил?Также обратите внимание, что этот запрос отправляется из модуля с отложенной загрузкой в другой модуль с отложенной загрузкой, который не был загружен в тот момент, когда этот запрос запускается, не уверен, что это как-то влияет, но см. Маршрутизацию ниже:
const appRoutes: Routes = [
{path: '', redirectTo: '/dashboard/quickcharts', pathMatch: 'full'},
{path: 'dashboard', loadChildren: './dashboard-links/dashboard-links.module#DashboardLinksModule' },
{path: 'stats', loadChildren: './statistics/statistics.module#StatisticsModule' },
];
/ stats маршрутизация
const routes: Routes = [
{
path: '',
component: StatisticsComponent,
children: [
{
path: 'journeyInfo',
component: JourneyInfoComponent
},
]
},
];
и / dashboard маршрутизация
const routes: Routes = [
{
path: '',
component: DashboardComponent,
children: [
{
path: 'general',
component: GeneralSearchModalComponent
},
{
path: 'warningSystems',
component: GeneralSearchModalComponent
},
{
path: 'quickcharts',
component: QuickChartListComponent
},
]
},
];
Обновление После небольшого тестирования мне удалось заставить его работать, преобразовав его вthis
this.router.navigateByUrl('/stats/journeyInfo?headcode=' + row.headCode + '&stoppingPattern=' + row.stoppingPattern + '&instances=' + row.instances).finally(() => {
// We close the dialog here to ensure it doesnt redirect back
this.dialog.closeAll();
});
}
Понятия не имею, почему это работает, но queryParams также не queryParams также не работал с navigateByUrl.Опять же, поскольку это неправильный угол, я не хочу реализовывать это так, как это может произойти снова, поэтому, пожалуйста, не считайте это решенным.Любая помощь приветствуется!