Я хочу использовать ActivatedRoute для получения параметров маршрута в сервисе, как в компоненте. Однако, когда я внедряю объект ActivatedRoute в Сервис, он содержит пустую переменную params
Я создал плункер, который воспроизводит поведение: http://plnkr.co/edit/sckmDYnpIlZUbqqB3gli
Обратите внимание, что целью является использование параметра в сервисе, а не в компоненте, способ установки плунжера предназначен исключительно для демонстрации проблемы.
Компонент (test
получен):
export class Component implements OnInit {
result: string;
constructor(private route: ActivatedRoute) {
}
ngOnInit() {
this.route.params.subscribe(params => {
this.result = params['test'];
});
}
}
Сервис (test
не получен):
export class Service {
result: string;
constructor(private route: ActivatedRoute) {
this.getData();
}
getData() {
this.route.params.subscribe(params => {
this.result = params['test'];
});
}
}