Сервис, внедренный в компонент, не определен вне конструктора - PullRequest
1 голос
/ 29 марта 2019

Итак, у меня возникла странная проблема: я пытаюсь внедрить некоторые сервисы в компонент, но некоторые из них не определены, когда я хочу использовать их в функции.

Я использовал эти сервисы в другихкомпонент до и нет проблем.Также я уже добавляю ключевое слово "public" или "private" в конструктор.

export class GeneSearchComponent {
    constructor(public router: Router,
                public clinicalFilteringService: ClinicalFilteringService,
                public searchBarService: SearchBarService ) {
                  //They all are defined within constructor
                  console.log(this.clinicalFilteringService);
                  console.log(this.router);
                  console.log(this.searchBarService);
    }

    test(query) {
        //clinicalFilteringService and router are undefined 
        console.log(this.clinicalFilteringService);
        console.log(this.router);
        //searchBarService is still defined
        console.log(this.searchBarService);
    }
}

Что может вызвать проблему?

Редактировать: Итак, я обнаружил, что изменение функции на исправление функции стрелкипроблема, но я до сих пор не знаю причину, почему она работает с функцией стрелки и не работает без нее.

...