Назначьте пустой массив объекту, который реализует интерфейс, а позже в него pu sh новых объектов - PullRequest
2 голосов
/ 04 августа 2020

У меня есть следующий интерфейс:

export interface FacilityInformation
{
  facilitiesInformation: [
  {
    id: string,
    productType: string,
    productSubtype: string,
    nominalAmount: number,
    currency: string,
    maturity: string,
    fee: number,
    recommended: number,
    margin: number,
    roac: number,
    ep: number
  }
 ],
 allFacilities: {
  amount: number,
  fee: number,
  roac: number,
  ep: number
 },
 customerLevel: {
  amount: number,
  fee: number,
  roac: number,
  ep: number
 },
 groupLevel: {
  amount: number,
  fee: number,
  roac: number,
  ep: number
 }
}

Моя цель - инициализировать пустой объект, который реализует интерфейс FacilityInformation с ПУСТОЙ массивом facilitiesInformation и более поздними объектами pu sh в этот массив. Однако мне кажется, что я не могу инициализировать пустой массив, он просит меня сразу присвоить значения:

let facilityInformation : FacilityInformation = 
{
  facilitiesInformation :   
  { id: string, productType: string ... } [], // says string is a type but used as a value

После назначения пустого массива я хотел бы сделать это:

  facilityInformation.facilitiesInformation.push({...})

Как я могу сначала, если все инициализируют пустой массив, а затем в него объекты pu sh?

1 Ответ

0 голосов
/ 04 августа 2020

Используйте этот способ.

let facilityInformation: FacilityInformation = 
{
  facilitiesInformation: [] as any,
  ...
} as FacilityInformation;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...