这是我在stackoverflow中的第一个问题,即使我已经使用了很多年。我是Angular的新手,在这个领域可以看到一些类似问题的答案,但是我仍然无法使其正常工作。
对不起,如果我重复请求。我正在订阅一些数据,希望在局部变量中分配和使用它并进一步处理。
ngOnInit() {
this.someMethod().subscribe(data => this.shuttleArea = data);
console.log('OUTER: '+JSON.stringify(this.shuttleArea));}
以下功能从服务中获取数据。
someMethod(){
return this.catalogueService['getShuttleRoute']().pipe(map(data => {
this.shuttleArea = JSON.parse('{"options":'+ JSON.stringify(data[0].value) +'}');
console.log('INNER: '+ JSON.stringify(this.shuttleArea));
return this.shuttleArea;
})); }
我在控制台收到带有INNER文本的预期服务响应。但是,当我在oninit上使用它时,控制台OUTER会显示“未定义”。我的目标不是显示在控制台中,而是需要在oninit或其他子函数下进行其他计算。
内部,外部和控制台已用于简化问题并明确目标。任何帮助将不胜感激。