Angular 如何将API结果的子集映射到角度项目中的类

Angular 如何将API结果的子集映射到角度项目中的类,angular,typescript,Angular,Typescript,我有一个Angular 6项目,不知道如何将API结果映射到类 我有一个API,它返回如下结果 { "Id": "f400b615-9041-4e64-a7d1-ff04855b2d00", "fields": [ { "cid": "auth0|5b3b0031297c9026b864fc6e", "name": "Field1", "questionText": "Lorem ipsum

我有一个Angular 6项目,不知道如何将API结果映射到类

我有一个API,它返回如下结果

{
    "Id": "f400b615-9041-4e64-a7d1-ff04855b2d00",
    "fields": [
        {
            "cid": "auth0|5b3b0031297c9026b864fc6e",
            "name": "Field1",
            "questionText": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
        },
        {
            "cid": "auth0|5b3b0031297c9026b864fc6e",
            "name": "Field2",
            "questionText": "Ut enim ad minim veniam, quis nostrud exercitation ullamco",
        },
        // etc
最多有100个字段,我想从每个字段生成一个类

我有以下类定义:

export class OpportunityField {
    fieldId = ""
    name = ""
    questionText = ""
} 

如何解析API以获取与“Field2”相关的字段,并使其成为一个新对象,然后可以传递给另一个函数?

您的实际界面应该是这样的,您可以使用

export interface Field {
    cid: string;
    name: string;
    questionText: string;
}

export interface OpportunityField {
    Id: string;
    fields: Field[];
}

现在您可以使用
OpportunityField.fields[1]访问字段。

这很有帮助,谢谢,但是字段'Field2'映射不在.fields[1],我需要搜索整个对象,只提取我需要的一个字段……在这种情况下,请使用let field=Opportunityy.fields(f=>f.name==“Field2”);
export interface Field {
    cid: string;
    name: string;
    questionText: string;
}

export interface OpportunityField {
    Id: string;
    fields: Field[];
}