【发布时间】:2017-12-02 04:00:33
【问题描述】:
我对 Angular 2 非常陌生,并试图了解我需要在我的应用程序中使用的基本结构。我编写了代码来对 PHP 脚本执行 http get 请求,该脚本从我的数据库返回一些 JSON 数据。这是作为我订阅的 observable 编写的,并且可以很好地显示模板中的值。但是,一旦此数据完成下载(或正在下载?),我需要从 JSON 数组的每个元素中提取一个 UNIQUE 值,并在另一个 http get 上的查询字符串中使用该值。考虑存储在数据库中的股票代码,然后运行第二次 get 从 REST 服务中检索股票数据。股票代码可能会重复很多次,所以我只想对每个 UNIQUE 值执行第二个 http get 请求(例如,只从 REST 服务获取一次 MSFT)。
需要循环从这些股票数据中返回的数据以提取特定的数据值,其中一些将完全按原样使用,而另一些将用于计算,并显示其结果。
如何构建代码来完成这些额外的计算?
我的代码目前看起来像这样(显然 console.log 是用于调试目的):
ngOnInit() {
this._tradeService.getTradeData() // get database data
.subscribe(
res => this.mspTradeData = res,
error => alert(error),
() => console.log(this.mspTradeData)
);
// TODO
// get unique symbols for REST service queries
}
任何提示或指导将不胜感激。
【问题讨论】:
-
股票代码可能会重复很多次,所以我只想对每个 UNIQUE 值执行第二次 http get 请求(例如,只从 REST 服务获取一次 MSFT)。这是什么意思 。休息调用将仅返回 pone 值或值数组什么是结构。因为这是您使用flatMap 的情况
-
你可以这样做:this.tradeService.getTradeData().subscribe(res => { this.data = res; this.data.forEach(x => { this.tradeService.anotherFunction (x.property).subscribe()}),错误...
标签: angular observable