早上好我无法使用此请求的结果(我想在局部变量中使用它)这是我放在ngOnInit中的代码
appli:any=[];
ngOnInit() {
this.http.get<any>(this.url).subscribe(data => {
console.log(data) //returns data
for (let item of data) {
this.appli.push(item)
}
console.log(this.appli) //returns data
});
console.log(this.appli) //returns data
console.log(this.appli[0]) //returns undefined
console.log(this.appli.length)// returns 0
}
使用可观察对象时的默认行为。
console.log(this.appli[0]) //returns undefined
console.log(this.appli.length)// returns 0
上面的行返回undefined和0,因为它们不在Subscribe函数的范围内,并且即使在收到API响应之前也将执行。 this.http.get返回一个可观察的并且不会停止代码执行]
如果将上面的控制台语句放在Subscribe函数中,这些将打印正确的输出。