I have an array of objects and I need to make an interface for it? The array of objects :
[
{
"_id": "62bd5fba34a8f1c90303055c",
"index": 0,
"email": "[email protected]",
"nameList": [
{
"id": 0,
"name": "Wendi Mooney"
},
{
"id": 2,
"name": "Holloway Whitehead"
}
]
},
{
"_id": "62bd5fbac3e5a4fca5e85e81",
"index": 1,
"nameList": [
{
"id": 0,
"name": "Janine Barrett"
},
{
"id": 1,
"name": "Odonnell Savage"
},
{
"id": 2,
"name": "Patty Owen"
}
]
},
Also I sent this object as props in another component, <SomeComponent componentData = {data} >
CodePudding user response:
Break it down from the inside out...
interface Name {
id: number;
name: string;
}
interface Entry {
_id: string;
index: number;
email?: string;
nameList: Name[]; // or Array<Name>
}
interface SomeComponentProps {
componentData: Entry[];
}
You could inline the whole thing but IMO that looks messy
interface SomeComponentProps {
componentData: Array<{
_id: string;
index: number;
email?: string;
nameList: Array<{
id: number;
name: string;
}>;
}>;
}