如何设计打字稿模型以进行响应? [英] How to design typescript model for response?

查看:63
本文介绍了如何设计打字稿模型以进行响应?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我如何在打字稿中设计模型,使我的回答低于要求?

How do I design my model in typescript where I got below response?

{
    "data":[
            {
                "name": "XYZ",
                "id": "1"
            },
            {
                "name" :"Abc",
                "id": "2"
            }
        ]
}

我尝试了什么:

export class responseModel<T>{
    data:T;
}

export class model{
    name:string;
    id: number;
}

您的建议是什么?所有数据都将作为{ data: THE_DATA_OBJECT }

What is your recommendation? all data will come as part of { data: THE_DATA_OBJECT }

{
    data: []
}

getInfo(): Observable<responseModel<model[]>> {
    // API HTTP Call
}

推荐答案

类不适用于声明表示以下内容的类型HTTP响应.使用接口或类型 ,因为HTTP请求产生的反序列化JSON值永远不会是类的实例

A class is unsuitable for declaring a type that represents an HTTP response. Use interface or type instead because the deserialized JSON values that result from HTTP requests will never be instances of a class

@Angular StyleGuide
考虑使用 数据模型的接口.

@Angular StyleGuide
Consider using an interface for data models.

export interface Model{
        id: number;
        name: string;
    }

export interface ResponseModel{
         data:Array<Model>;
  }

getInfo(): Observable<responseModel>{
return this._httpClient.get<resposneModel>('url);
}

这篇关于如何设计打字稿模型以进行响应?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆