How do you instantiate the members as class with empty values?
Plunkr
I instantiate with
public members = new MemberClass();
but the console shows Members: {} so I'm unable to set the default empty values
so basically I'm trying to replicate an empty structure like:
this.members = [ 
    { 
      "Name" : "", "Id" : "", "Team" : "",
      "Cases" : {
        "history" : []
      }
    }
];
                Use interfaces ;) And this is a way you can create an Array with an empty object of type Member with properties set. I don't know the use case, at least I do not set the properties for empty objects/arrays of models, but here we go :)
So first your interfaces, which are:
export interface Member {
    Id: string;
    Name: string;
    Cases: Case[];
}
export interface History {
    Id: string;
    CaseNumber: string;
}
export interface Case {
    History: History[];
}
Then you create 3 functions to set the properties:
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
  }
}
And now in your component you can call the function createMember, that then calls the two other functions:
members = [createMember()];
PS, according to your models, the following is not the model of Member-array, they name and build doesn't match, but I have created the above, based on the models you have provided.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With