Commit fd88f46a by Emile TAVERNE

NgFor - input - models

parent 7b7e297d
......@@ -6,8 +6,6 @@
</header>
<div class="w80 center ptm">
<div class="grid-4 has-gutter">
<app-card></app-card>
<app-card></app-card>
<app-card></app-card>
<app-card *ngFor="let person of persons" [person]="person"></app-card>
</div>
</div>
import {Component} from '@angular/core';
import {Component, OnInit} from '@angular/core';
import {GenderEnum, PersonModel} from "../models";
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
export class AppComponent implements OnInit {
private readonly nbPerson: number = 10;
private persons: PersonModel[] = [];
ngOnInit(): void {
for (let i = 0; i < this.nbPerson; i++) {
const person = new PersonModel();
person.id = i;
person.lastname = 'Tata ' + person.id;
person.firstname = 'Toto';
person.email = 'toto.tata@test.fr';
person.gender = i % 2 === 0 ? GenderEnum.FEMALE : GenderEnum.MALE;
this.persons.push(person);
}
}
}
<div class="card pam">
<h2 class="txtcenter">{{prenom}} {{nom | uppercase}}</h2>
<img class="center w100" [src]="image">
<div class="card pam mtm tbm">
<h2 class="txtcenter">{{person.firstname}} {{person.lastname | uppercase}}</h2>
<img *ngIf="person.image; else elseBlock" class="center w100" [src]="person.image">
<ng-template #elseBlock>
<img class="center w100" [src]="defaultImages.get(person.gender)">
</ng-template>
</div>
......@@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700" rel="stylesheet">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<link rel="icon" type="image/png" sizes="50x50" href="/assets/favicon.png">
</head>
<body>
<app-root></app-root>
......
export * from './person.model';
export class PersonModel {
public id: number;
public lastname: string;
public firstname: string;
public email: string;
public gender: GenderEnum;
public image: string;
}
export enum GenderEnum {
MALE,
FEMALE
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment