2016-07-28 2 views
0

this.Title을 사용하여 getHeroes() 메서드에서 "title"속성을 읽을 수 있습니다. console.log를 볼 수는 있지만 "영웅"속성은 볼 수 없습니다. 나는 "this.heroes [0] .id" "this.heroes"와 정의되지 않은 모든 것을 시도했다. 하지만 console.log (자바 스크립트 콘솔)에서 모든 속성을 표시합니다. 내가 뭐 잘못하고있는거야?각도 2 읽지 않은 json 속성 json 속성이 정의되지 않음 기타 속성 ok

감사

export class AppComponent implements OnInit { 
    title = 'Tour of Heroes'; 
    heroes: Hero[]; 
    selectedHero: Hero; 
    rows: Object[]; 

    constructor(private heroService: HeroService) { } 

    getHeroes() { 
    this.heroService.getHeroes().then(heroes => this.heroes = heroes); 
    //console.log("get heroes: "+this); 
    } 

    getRows(){ 
    var n = 3; 
    for(var i=0; i<1;i++){ 
     console.log(this.title); 
    } 

답변

0

getHeroes 방법은 비동기은 그래서 당신은 콜백 자체 내에서 console.log를 이동해야합니다. 그렇지 않으면, 결과는 아직되지 않습니다 : 당신이 getHeroes 방법의 호출 후 console.log를 사용하는 경우

this.heroService.getHeroes().then(heroes => { 
    this.heroes = heroes; 
    console.log("get heroes: "+this); 
}); 

, 당신은 클래스에 heroes 속성을 설정하기 전에 뭔가를 표시합니다.