用else将项目推入数组

时间:2018-11-09 13:12:06

标签: javascript angular typescript

在打字稿代码中,我有一系列产品

products = [10,25,45,89];

我正在拨打服务电话以检索在该产品上购物的客户

products.forEach(x => 
  this.clientService.getclientOrdersByProduct(clientId, x)
  .subscibe(s=>{ 
     if (s){ 
       this.clientOrders.push(s);
     } else{ 
       // add the product id
     }
   })
); 

问题是我想添加一个else并在clientOrders中推送产品ID。 ClientOrders类就是这样

export interface ClientAccount{  product?: Product; ....}

如何在其他地方实现这一目标?

谢谢

1 个答案:

答案 0 :(得分:1)

假设界面是这样的:

export interface ClientAccount{  
  product?: Product;
  productId: number;
  ...
}

您可以执行以下操作:

创建一个clientOrder数组:

clientOrder: ClientAccount[] = [];

for

products.forEach(x => 
  this.clientService.getclientOrdersByProduct(clientId, x)
  .subscibe(s=>{ 
     if (s){ 
       this.clientOrders.push(s);
     } else{ 
       this.clientOrder.push({product: **something**, productId: x);
     }
   })
); 

something用粗体表示,因为我不知道您从该订阅中获得什么样的数据。