Я пытаюсь создать вложенный объект json, для которого я создал интерфейс. Я получаю сообщение об ошибке как Type of property serservicesAndHeads are incompatible
и говорит Property is missing
.Мой интерфейс выглядит следующим образом:
interface Head {
HeadNumber?: string;
HeadDescription?: string;
};
interface ServicesAndHead {
majorService?: string;
subMajorService?: string;
servicesAndHeads:Head[];
}
export interface MyTableItem {
demandNo?: string;
demandName?: string;
servicesAndHeads?:ServicesAndHead;
//servicesAndHeads?:ServicesAndHead[];
}
Где мой json выглядит так:
const dataItem: MyTableItem =
{
demandNo: 'Demand Number 2',
demandName: 'Animal Husbandary, Livestock, Fisheries and Veterinary Services',
servicesAndHeads: [
{
majorService: 'C-Economic Service',
subMajorService: '(a) Agriculture and Allied Activities',
majorHead: [
{ majorHeadNumber: '3098', majorHeadDescription: 'Animal Husbandry' },
{ majorHeadNumber: '3999', majorHeadDescription: 'Diary Development' },
{ majorHeadNumber: '4902', majorHeadDescription: 'Fisheries' }
]
},
{
majorService: 'C- Capital Account of Economic Services',
subMajorService: '(a) Capital Account of Agriculture and Allied Activities',
majorHead: [
{ majorHeadNumber: '0012', majorHeadDescription: 'Capital Outlay on Animal ' },
{ majorHeadNumber: '3245', majorHeadDescription: 'Capital Outlay on Fisheries' }
]
}
]
}
Я пробовал это также для вложения serviceAndHead
servicesAndHeads?: {
[key: string]:ServicesAndHead,
majorHeads?: {
[key: string]:MajorHead
};
};
Как бы я исправить свой код, чтобы принять указанный JSON.