捕获http json body响应并转换为角度ionic5中的数组

Posted

技术标签:

【中文标题】捕获http json body响应并转换为角度ionic5中的数组【英文标题】:Capture http json body response and convert into array in angular ionic5 【发布时间】:2021-05-17 16:29:10 【问题描述】:

我被卡住了,在查看这里和其他页面时,我找不到合适的东西:/ 我想要的是提取它并以一种我可以用来在 html 中构建一个简单表格的方式来获取它

response count
[value] [value]
[value] [value]

还可以将其设为列表格式,以便稍后在 chart.js 中使用,但这将在以后使用。

(仅供参考,我不是开发人员,一路学习——但我擅长乐高 :) 所以连接积木和适应是我学习编码的方法,所以如果初学者有问题,我深表歉意 :))

所以,我有一个 http 调用 (GET) 工作。它返回正文:

[
  
    "response": "Yes",
    "count": 1
  ,
  
    "response": "No",
    "count": 1
  
]

但我不知道如何使用它...

我的http服务查询:

getPollResults(pollId): Observable<Pollresults>
      return this.http
      .get<Pollresults>(this.base_path + '/polls/responses/' + pollId)
      .pipe(
        retry(2),
        catchError(this.handleError)
      )
  

我的 Pollresults 模型:

export class Pollresults 

    response: string;
    count: number;



我的组件 page.ts 调用似乎捕获了数据,但后来我被困在如何使用它上......

 export class PollResultsPage implements OnInit 

   uid: string;
   dataPollresults: Pollresults;

   constructor(
     private httpConfigService: HttpConfigService
   )  

   ngOnInit() 
      // this.id = this.activatedRoute.snapshot.params["id"];
      this.uid = "alphapoll";
      //get item details using id
      this.httpConfigService.getPollResults(this.uid).subscribe(response => 
      console.log(response);
      this.dataPollresults = response;
      //data => resolve(Object.keys(data).map(key => data[key]))
         )
   

关于如何正确提取和获取数组的任何帮助?以及如何在html中添加?

非常感谢您的帮助。

【问题讨论】:

【参考方案1】:

改变这个

getPollResults(pollId): Observable<Pollresults>
  return this.http
  .get<Pollresults>(this.base_path + '/polls/responses/' + pollId)
  .pipe(
    retry(2),
    catchError(this.handleError)
  )

到这里

getPollResults(pollId): Observable<Pollresults[]>
  return this.http
  .get<Pollresults>(this.base_path + '/polls/responses/' + pollId)
  .pipe(
    retry(2),
    catchError(this.handleError)
  )

【讨论】:

以上是关于捕获http json body响应并转换为角度ionic5中的数组的主要内容,如果未能解决你的问题,请参考以下文章

如何验证集合的类型?

未捕获(承诺中)TypeError:将循环结构转换为 JSON

挂钩 OData 的 $metadata 响应并将其从 XML 转换为 JSON

将 http json 响应转换为自定义类

在Angular8中将HTTP响应json转换为打字稿对象

使用body.json()解析来自http.get()的响应时出错