import { Component, OnInit } from '@angular/core'; import { MatTableDataSource } from '@angular/material/table'; import { PremiseService } from '../data-object-service'; import { MessageService } from '../message.service'; import { Premise } from '../data-objects' @Component({ selector: 'app-my-premises', templateUrl: './my-premises.component.html', styleUrls: ['./my-premises.component.css'] }) export class MyPremisesComponent implements OnInit { premises: Premise[] dataSource: MatTableDataSource displayedColumns: string[] = [ "description", "street", "zip", "city" ] constructor(private premiseService: PremiseService, private messageService: MessageService) { } async getPremises(): Promise { try { this.messageService.add("Trying to load premises") this.premises = await this.premiseService.getPremises() this.messageService.add("Premises loaded") this.dataSource = new MatTableDataSource(this.premises) } catch (err) { this.messageService.add(JSON.stringify(err, undefined, 4)) } } ngOnInit(): void { this.messageService.add("MyPremisesComponent.ngOnInit") this.getPremises() } }