对于您的RxJS专业人员来说,这应该很容易。
我正在使用Angular 5。
我想做这样的事情:
this.allFilters = this.http.get(path).pipe(
map((response) => response.forms.sim_filter.schema.properties))
响应是沼泽标准对象,而不是数组,因此我不确定映射是否正确。
因此,基本上,我只对深度嵌套的属性感兴趣,并且只希望在我订阅this.allFilters
我该怎么做?
答案 0 :(得分:1)
这与Rx无关,更多是关于JS的问题。
allFilters
是您在代码中的可观察对象,是通过HTTP调用分配的。
订阅后,您将收到管道map
中返回的内容:
this.allFilters = this.http.get(path).pipe(
map((response) => response.forms.sim_filter.schema.properties))
this.allFilters.subscribe (res => { /* res = originalResponse.forms.sim_filter.schema.properties */});
您可以使用map
,因为它与JS对象/数组无关,但与RxJS itslef(这是Rx运算符)无关。这本可以称为RxJSmap
,这只是一个想要的巧合。
除此之外,我不明白您的问题是什么。什么不起作用?您期待什么?你能解释更多吗?