RxJS:通过 http 从复杂 json 中提取值数组
RxJS: Extracting an array of values from complex json via http
Angular 10
(简体)
我有一个 http 获取 returns 一个国家和该国家/地区的州列表:
{"id":1,
"countryMeta":
{"statesList":
[
{"name":"AB","value":"AB"},
{"name":"CA","value":"CA"},
]}
}
我试图从此对象中获取状态列表并将其放入 NameValue 数组中,但我只得到 1 个状态并且它不是数组。 switchMap 不应该这样做吗?
states$ = this.myHttpService.get().pipe(switchMap((x) => x.countryMeta.statesList));
然后消耗:
*ngFor="let state of states$ | async"
我认为你需要map
。
import { map } from 'rxjs/operators';
states$ = this.myHttpService.get().pipe(map((x) => x.countryMeta.statesList));
switchMap
切换到一个新的 observable,map
转换当前的 observable。
Angular 10
(简体)
我有一个 http 获取 returns 一个国家和该国家/地区的州列表:
{"id":1,
"countryMeta":
{"statesList":
[
{"name":"AB","value":"AB"},
{"name":"CA","value":"CA"},
]}
}
我试图从此对象中获取状态列表并将其放入 NameValue 数组中,但我只得到 1 个状态并且它不是数组。 switchMap 不应该这样做吗?
states$ = this.myHttpService.get().pipe(switchMap((x) => x.countryMeta.statesList));
然后消耗:
*ngFor="let state of states$ | async"
我认为你需要map
。
import { map } from 'rxjs/operators';
states$ = this.myHttpService.get().pipe(map((x) => x.countryMeta.statesList));
switchMap
切换到一个新的 observable,map
转换当前的 observable。