Я новичок в этих рамках. Я хочу преобразовать объекты в массив в угловых 8. Но я не понимаю, как это работает.
На самом деле, я хочу отобразить несколько транзакций продаж клиента со статусом false. Итак, каким-то образом я получаю значения тех транзакций, совершенных одним и тем же клиентом, как отдельные объекты. Теперь я хочу преобразовать эти объекты в один массив, чтобы можно было повторять их в html-файле через * ngFor.
export class InvoicesComponent implements OnInit {
displayedColumns: string[] = ['ProductName', 'CustomerName', 'Quantity',
'Rate', 'Total'];
id;
dataSource;
salesTransaction: SalesTransactionElement[];
constructor(private service: SalesTransactionsService,
private route: ActivatedRoute)
{ }
ngOnInit() {
this.id = this.route.snapshot.paramMap.get('id');
this.service.getSalesTransaction(this.id).subscribe((singleData: any) =>
{
this.service.getAllSalesTransactions().subscribe((data: any) =>
{
data.forEach(element =>
{
if (singleData.CustomerName === element.CustomerName &&
element.Status === false) {
this.salesTransaction = element;
console.log(this.salesTransaction);
}
});
});
}
Фактические результаты:
/ ***** Отдельнокак два объекта **** /
{SalesTranId: 54, ProductId: 10, CustomerId: 21, InvoiceId: null, ProductName: "Asus"}
{SalesTranId: 51, ProductId:17, CustomerId: 21, InvoiceId: 1, ProductName: "Dell"}
Ожидаемые результаты:
/ ********** Массив объектов ************ /
[{SalesTranId: 54, ProductId: 10, CustomerId: 21, InvoiceId: null, ProductName: "Asus"},
{SalesTranId: 51,ProductId: 17, CustomerId: 21, InvoiceId: 1, ProductName: "Dell"}]