我可以阅读"标题"来自this.title
的getHeroes()方法的属性,如果我console.log
我可以看到它,但不能用"英雄"财产,我试过" this.heroes [0] .id" " this.heroes"一切都是不确定的。但如果我console.log(this)
,JavaScript控制台会显示所有属性。
我做错了什么?
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 :(得分:0)
Name Date Date1 price
X1 2013-04-12 2013-04-11 1.1
X1 2013-05-12 2013-05-12 2
X1 2014-04-12 2013-05-12 2
X2 2012-06-11 null null
X2 2014-04-12 2014-04-12 0.6
X2 2015-05-01 2014-04-12 0.6
X3 2005-02-01 null null
方法是异步的,因此您需要在回调本身内移动getHeroes
。否则,结果还没有:
console.log
如果在调用this.heroService.getHeroes().then(heroes => {
this.heroes = heroes;
console.log("get heroes: "+this);
});
方法后使用console.log
,则在设置类的getHeroes
属性之前会显示一些内容。