Я думаю, что ваш подход не лучший, и ваш код перенаправляет на курсы, потому что это маршрут по умолчанию, когда запись маршрута не существует.
Если вы хотите передать конечное число параметров через URL, например, идентификатор и заголовок, вы можете сделать следующее:
{path: 'courses/:id/:title', component: CoursesComponent},
Этот пример будет работать для вашего URL: https://localhost: 4200 / # / courses / 12 / someInfo . Но URL всегда должен быть "/ courses / id / title"
. Если вы хотите передать больше информации, я рекомендую вам воспользоваться такой услугой, как эта:
courseService
@Injectable()
export class CourseService {
currentCourse: Course;
getCurrentCourseInfo(): Course {
return this.currentCourse;
}
setCurrentCourseInfo(course: Course): void {
this.currentCourse = course;
}
}
Затем в исходном компоненте:
goToCourseDetail(course: Course): void {
this.courseService.setCurrentCourseInfo(course);
this.router.navigate(['courses/' + id]);
}
для получения информации о микросервисном компоненте :
this.course = this.currentService.getCurrentCourseInfo();
теперь в this.course вам будет доступна вся информация о курсе