Step1: events-app.component.ts file
import { Component } from '@angular/core';
@Component({
selector: 'events-app',
template: `
<events-list></events-list>
`
})
export class EventsAppComponent {
title = 'ng-fundamentals';
}
Step2: events-list.component.ts file
import { Component } from '@angular/core';
@Component({
selector: "events-list",
template: `
<div>
<h2>Upcoing Angular Evnets</h2>
<hr>
<event-thumbnail [event]="event1"></event-thumbnail>
</div>
`
})
export class EventListComponent{
event1 = {
id: 1,
name: 'Angular Connect',
date: '9/27/2019',
time: '10:00 am',
price: 999.90,
imageUrl: '/assets/images/angularconnect-shield.png',
location: {
address: '1047 DT',
city: 'London',
country: 'England'
}
}
}
Step3: events-thumbnail.component.ts file
import { Component, Input } from '@angular/core';
@Component({
selector: 'event-thumbnail',
template: `
<div class="well thumbnail">
<h2>{{event.name}}</h2>
<div>Date: {{event.date}}</div>
<div>price: ${{event.price}}</div>
<div>time: {{event.time}}</div>
<div>
<span>Location: {{event.location.address}}</span>
<span> </span>
<span>{{event.location.city}}, {{event.location.country}}</span>
</div>
</div>
`
})
export class EventThumbnailComponent{
@Input() event: any;
}
app.module.ts file (Register events component, event list component and event thumbnail component in angular module )
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { EventsAppComponent } from './events-app.component';
import { EventListComponent } from './events/event-list.component';
import { EventThumbnailComponent } from './events/event-thumbnail.component';
@NgModule({
declarations: [
EventsAppComponent,
EventListComponent,
EventThumbnailComponent
],
imports: [
BrowserModule
],
providers: [],
bootstrap: [EventsAppComponent]
})
export class AppModule { }
index.html file
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Ng Fundamentals</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<div class="container">
<events-app></events-app>
</div>
</body>
</html>