Ошибка в консоли, но отображается в браузере

У меня есть проблема в моем угловом приложении, которое говорит ОШИБКА TypeError: Невозможно прочитать свойство 'name' из undefined, но отображается projects.name. Как я могу избавиться от ошибки в console.log. Данные содержат объект.

ngOnInit() {
    this.route.params 
      .subscribe((params: Params) => { 
      this.id = +params['id']; 
      this.projectsService = this.injector.get(ProjectsService);
      this.projectsService.getProject(this.id)
      .subscribe(
          (data:any) => {
            this.projects = data;
            console.log(data);

          },
          error => {
            alert("ERROR");
          })
      });  
}

2 ответа

Решение

Похоже, вы использовали непосредственно projects.name а также projects получает Ajax. Этот код не работает, потому что он пытается projects.name привязка при первом запуске обнаружения изменений.

В таких случаях Use Safe Navigation / Elvis оператор

{{projects?.name}}

Вы можете использовать {{projects?.Name}} или вам следует инициализировать свои проекты... лучший способ - использовать интерфейс и класс для ваших проектов.

Другие вопросы по тегам