Как исправить пропущенную ошибку итератора в машинописи без добавления итератора - angular 8 - PullRequest
0 голосов
/ 28 февраля 2020

Мой компонент имеет переменную

songs: Array<any>;

в ngOnInit Я делаю следующее

this.songs = new Array();
this.musicService.get()
  .subscribe(r => {
    for(let song of r.body) { // get a list of songs
      let s = song.split('-', 2);
      this.songs.push({ // i just want to put an object
        'artist': s[0],
        'title': s[1]
      ]);
    }
  });

Это приводит к ошибке консоли:

ОШИБКА в src / app / music / musi c .component.ts (24,31): ошибка TS2488: тип «Объект» должен иметь метод «Symbol.iterator», который возвращает итератор.

Я хочу использовать object внутри array, в этом случае мне не нужен итератор. Как убрать эту надоедливую ошибку, не забивая код ненужными итераторами?

1 Ответ

0 голосов
/ 28 февраля 2020

enter image description here

машинописный тип Массив не имеет [Symbol.iterator] ... :( Но вы можете использовать «forEach».

enter image description here

...