Zze*_*Zze 6 rxjs typescript angular
我有以下HttpClient.post调用返回一个对象数组.
import { map } from 'rxjs/operators/map';
public getArray(profileId: number): Observable<any> {
return this.http.post("/api/url", postObject, HttpSettings.GetDefaultHttpRequestOptions())
.pipe(map(data => {
console.log(data); // logs (2) [{…}, {…}]
return data;
}));
}
Run Code Online (Sandbox Code Playgroud)
我需要实例化一个对象数组.我不能只键入断言因为我需要Thing构造函数来解析一些json和其他.
基本上我想做的是:
.pipe(map(data => {
console.log(data); // logs (2) [{…}, {…}]
return data.map(v => new Thing(v));
}));
Run Code Online (Sandbox Code Playgroud)
但是我不能(据我所知)因为data是Type ArrayBuffer而且不可迭代.我怎样才能做到这一点?
如何从服务器实际发送数据?是它json还是别的什么?如果json尝试在参数中使用参数中HttpClient的调用(参见文档)responseType:'json'中options指定.
import { map } from 'rxjs/operators/map';
public getArray(profileId: number): Observable<Thing[]> {
var options = HttpSettings.GetDefaultHttpRequestOptions();
options.responseType = 'json';
return this.http.post("/api/url", postObject, options)
.pipe(map(data => data.map(v => new Thing(v))));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6102 次 |
| 最近记录: |