Неопределенный экземпляр `this` для внедрения службы angular - PullRequest
0 голосов
/ 04 марта 2020

Рассмотрим следующий пример:

MyComponent.ts

export class MyComponent {

  constructor(private myService: MyService) {
    myService.printServiceField();
  }
}

MyService.ts

@Injectable({
  providedIn: 'root'
})
export class MyService {

  readonly myField= 'N/A';

  constructor() {}

  printServiceField() {
    console.log(this.myField);
  }

Я получаю следующее

ОШИБКА TypeError: «это не определено»

Кто-нибудь сможет объяснить почему или указать мне правильное направление? Если я сделаю myField static (и назову его MyService.myField), то это сработает. Я на самом деле не ищу решения (оно у меня есть), а скорее почему это происходит.

1 Ответ

0 голосов
/ 04 марта 2020

Работает нормально - вот стек-блиц: https://stackblitz.com/edit/angular-khbj1x

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...