如何解决Angular 使用 http 服务获取数据并映射数据
我正在尝试从 API 获取数据“pnfiles”并映射数据,如果我在 post man 中测试 api,它将返回以下 JSON 数据
{
"DataResult": {
"4562": {
"pnData": {
"pnID": "4562","userID": "2427","storeID": "8","supplierID": "1119","skuID": "C123-ZA-SI-NE","deptID": "","categoryID": "","note": "Sale","priority": "0","deviceCreatedTS": "2021-06-22 19:13:35","loadedTS": "2021-06-22 19:13:35","linkedID": "0","dataDate": "2021-06-10","channelCode": "18","flagID": "7","geoLat": "0.00000000","geoLong": "0.00000000","geoAcc": "0","articleDescription": "117 - Citiz & Milk Silver","userName": "Christopher Steven Ogle","lastSeen": "unread","flagDescription": "Sale","flagType": "0"
},"pnfiles": [
{
"fID": "1323","pnID": "4562","fileName": "IMG_20210620_113839_1.jpg","filePath": "../PhotoNoteStore/2021-06-22/4562/1323-IMG_20210620_113839_1.jpg","dateModified": "0000-00-00 00:00:00"
},{
"fID": "1324","fileName": "IMG_20210620_113822.jpg","filePath": "../PhotoNoteStore/2021-06-22/4562/1324-IMG_20210620_113822.jpg","dateModified": "0000-00-00 00:00:00"
}
]
}
}
以下是我尝试获取数据并映射数据或只是控制台记录数据的服务。
import { Injectable } from '@angular/core';
import { HttpClient} from '@angular/common/http';
import { environment } from '../../environments/environment';
import { map} from 'rxjs/operators';
@Injectable({
providedIn: 'root'
})
export class galleryService {
url = environment.url;
constructor(
private http: HttpClient,) {}
suppliergallery(id) {
return this.http.get(`${this.url}/V2/api/something/?gallery/?supplier=${id}`).pipe(
map(results => {
console.log("result in galleryservice",results);
return results['DataResult']['pnfiles'];
})
);
}
}
如果我获取数据的方式错误,有人可以帮助我,以下结果来自控制台日志
result in galleryservice
Object { DataResult: {…} }
数据结果:对象 { Linkedsuppliers: false,LinkedsuppliersCount: 1 } 链接供应商:假 链接供应商数量:1 : 对象 { ... }
解决方法
这个问题可以关闭,我的bug来自api本身
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。