为什么由console.log打印时,此(gameindex)属性值未定义?

时间:2019-07-05 04:51:00

标签: angular typescript

在代码console.log(this.gameIndex)中输出未定义的内容。为什么是这样?当我在构造函数中使用console.log(this.gameIndex)时,会打印出正确的值。

打字稿

export class HomeComponent implements OnInit {
  game:String;
  gameIndex;
  games:String[];
  constructor() { 
    this.gameIndex = 0;

    this.games = ['game1','game2','game3'];
    this.game = this.games[this.gameIndex];

    setInterval(this.rotatingBackground,3000);
    console.log(this.gameIndex);
  }

  ngOnInit() {


  }

  rotatingBackground():any {
    console.log(this.gameIndex);
    this.game = this.games[this.gameIndex];
    console.log(this.game);
  }


}

2 个答案:

答案 0 :(得分:0)

尝试这样使用

        setInterval(() => this.rotatingBackground(), 1000);

答案 1 :(得分:0)

这是因为您尚未定义它。

gameIndex;

应该是

gameIndex:Number;`