2017-10-29 4 views
0

Unterhalb der Code ist die JSON-DatenWinkel 4 - Iterate JSON-Objekte

export class AppComponent implements OnInit { 
      observableBooks: Observable<Book[]> 
      books: Book[]; 
      errorMessage: String; 
      constructor(private bookService: BookService,private loki: LokiService) { } 
      ngOnInit(): void { 
       this.observableBooks = this.bookService.getBooksWithObservable(); 
       this.observableBooks.subscribe(
        books => this.books = books, 
        error => this.errorMessage = <any>error); 

     this.observableBooks.forEach(element => { 
      console.log(element);/// here I can get the json format as expected 

// console.log(element.fname); //this is not working 
// console.log(element.lname);// this is not working 
     }); 

     } 
    } 

Betrachten Sie die json als wie unter

[{fname: "name1",lname: "name2"},{fname: "name3",lname: "name4"}] 

Ich mag die Werte von fname und lname zu bekommen.

Kann mir jemand helfen?

+0

, die nicht gültig JSON ist. Ist dies ein Array von Objekten ?, dann sollte es in '[]' eingeschlossen sein. –

+0

Haben Sie 'console.log (element [0] .fname)' versucht? –

+0

ja, es ist ein Array von Objekt – Hornet

Antwort

1

bestätigen, wenn Sie diese 2 Objekte in Ihrem Buch Modell

export class Book{ 
    fname: string; 
lname: string; 
} 

und versuchen, haben diese

this.observableBooks.subscribe(books => { 
      this.books = books, 
      this.books.forEach(element => { 
       console.log(element.fname); 
       console.log(element.lname); 
      }) 
      error => this.errorMessage = <any>error 
}); 
+0

Für diese auch zeigt den gleichen Fehler – Hornet

+0

Ich aktualisierte die Antwort –