>TYPESCRIPT CODE:
helloworld(){
this.get_data().then(data => {
console.log(data);
});
}
get_data(){
return this.http.get('assets/data/user.json').map(res => res.json()).subscribe(data => {
return this.json_data = data;
});
}
任何人都可以告诉我为什么不起作用。我该如何解决这个问题?对不起,我的英语很弱。
你不能在
订阅时这样做。你有一个可观察量,它生成一个数据流,这意味着你实际上无法知道流何时结束。
另一方面,然后与承诺一起使用。一个承诺只有一个要返回的数据。一旦数据到达,然后激活。
在您的情况下,您需要做的是:
helloworld(){
this.get_data().subscribe(data => {
console.log(data);
})
}
get_data(){
return this.http.get('assets/data/user.json').map(res => res.json());
}