Задать вопрос
Felino
@Felino

В чем ошибка не магу понять?

https://github.com/Felino7727/incode7727
export class AppComponent implements OnInit {

  public fulls: FullModels[];
  public data1: any;

  constructor(private peopleService: PeopleService) {
  }

  ngOnInit() {
    this.peopleService.getPeople().subscribe(data => {
      this.data1 = data;

      for (let i in this.data1) {
        this.fulls[i] = [
          new FullModel(
            this.data1[i].general.firstName,
            this.data1[i].general.lastName,
            this.data1[i].general.avatar,
            this.data1[i].job.company,
            this.data1[i].job.title,
            this.data1[i].contact.email,
            this.data1[i].contact.phone,
            this.data1[i].address.street,
            this.data1[i].address.city,
            this.data1[i].address.zipCode,
            this.data1[i].address.country)
        ]
        console.log(this.fulls[i])
      }
    });
  }
}

export class FullModel {
    constructor(
      public firstName: string,
      public lastName: string,
      public avatar: string,
      public company: string,
      public title: string,
      public email: string,
      public phone: string,
      public street: string,
      public city: string,
      public zipCode: string,
      public country: string
    ) {
  }
}

export interface FullModels {
  fulls:FullModel[]
}


Ошибка:
ERROR TypeError: Cannot set property '0' of undefined
at SafeSubscriber._next (app.component.ts:23)
at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsub (Subscriber.js:195)
at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next (Subscriber.js:133)
at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._next (Subscriber.js:77)
at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/operators/map.js.MapSubscriber._next (map.js:41)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
at FilterSubscriber.push../node_modules/rxjs/_esm5/internal/operators/filter.js.FilterSubscriber._next (filter.js:38)
at FilterSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
at MergeMapSubscriber.push../node_modules/rxjs/_esm5/internal/operators/mergeMap.js.MergeMapSubscriber.notifyNext (mergeMap.js:79)
  • Вопрос задан
  • 92 просмотра
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
this.fulls у тебя undefined, ты его декларируешь, но не устанавливаешь.
И опять, плохая затея мутировать входящий объект, верный путь к архитектуре из говен и ходулей, не зря они однонаправленный поток данных сделали.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы