Angular 2实例化具有空值的类

Dan*_*l S 4 typescript angular

如何将成员实例化为具有空值的类?

Plunkr

我实例化了

public members = new MemberClass();

但控制台显示成员:{}所以我无法设置默认的空值

所以基本上我试图复制一个空结构,如:

this.members = [ 
    { 
      "Name" : "", "Id" : "", "Team" : "",
      "Cases" : {
        "history" : []
      }
    }
];
Run Code Online (Sandbox Code Playgroud)

AJT*_*T82 5

使用接口;)这是一种可以Member使用属性设置的类型为空的对象创建数组的方法.我不知道用例,至少我没有设置空对象/数组模型的属性,但在这里我们去:)

首先你的接口是:

export interface Member {
    Id: string;
    Name: string;
    Cases: Case[];
}
export interface History {
    Id: string;
    CaseNumber: string;
}
export interface Case {
    History: History[];
}
Run Code Online (Sandbox Code Playgroud)

然后创建3个函数来设置属性:

export function createMember(Id?:string,Name?:string, Cases?:Case[]): Member {
  return {
    Id,
    Name,
    Cases[createCase()]       
  }
}

export function createCase(History?:History[]): Case {
  return {
    History[createHistory()]
  }
}

export function createHistory(Id?: string,CaseNumber?:string): History {
  return {
    Id,
    CaseNumber
  }
}
Run Code Online (Sandbox Code Playgroud)

现在在您的组件中,您可以调用该函数createMember,然后调用另外两个函数:

members = [createMember()];
Run Code Online (Sandbox Code Playgroud)

PS,根据你的型号,以下不是Member-array 的型号,它们的名称和构造不匹配,但我已根据你提供的型号创建了上述内容.