The different stages of component execution is called "component life cycle"
1.creating the component instance
2.rendering the component template[executing databinding expression,directives,..]
3.creates and renders component children
4.checks for input property changes
5.destroying component
The methods which will be executed automatically in different stages of component execution is called "component life cycle methods | events | hooksngOnChanges EventThis will be executed whenever input property value changes, this will receive SimpleChanges object with old and new value.ngOnInit EventThis will be executed after 1st execution of ngOnChanges method and constructor, this can be used to read input property value (or) subscribing to observable.This will be executed only once compare to ngonchangesCalled once the component is initialized.ngOnDestroy EventThis will be executed before destroying the component, this can be used to release memory resources before component destruction.ngAfterViewInitCalled after the component’s view and child views has been initializedngAfterViewCheckCalled after the component’s view and child views has been checkedngAfterContentInitCalled after a content (ng-content) has been projected into view.ngAfterContentCheckCalled every time the projected content has been checkedExample.ts Changesimport { AfterContentChecked, AfterContentInit, AfterViewChecked, AfterViewInit, Component, DoCheck, OnChanges, OnDestroy, OnInit } from '@angular/core';@Component({selector: 'app-lifecyclehooks',templateUrl: './lifecyclehooks.component.html',styleUrls: ['./lifecyclehooks.component.css']})export class LifecyclehooksComponent implementsOnInit,OnChanges,DoCheck,AfterContentInit,AfterContentChecked,AfterViewInit,AfterViewChecked,OnDestroy {name: string ='';constructor() {console.log('Constructor Called');}ngOnInit() {console.log('ngOnInit Called');}ngOnChanges(){console.log('ngOnChanges Called');}ngDoCheck(){console.log('ngOnDoCheck Called');}ngAfterContentInit(){console.log('ngAfterContentInit Called');}ngAfterContentChecked(){console.log('ngAfterContentChecked Called');}ngAfterViewInit(){console.log('ngAfterViewInit Called');}ngAfterViewChecked(){console.log('ngAfterViewChecked Called');}ngOnDestroy(){console.log('ngOnDestroy Called');}}.html Changes<h1>Life Cycle Hooks Example</h1><br><input type="text" class="forms-contrl" [(ngModel)]="name"><p>{{name}}</p>Output in Console LogOn entering the text in the textbox, the below events get triggered.myService.ts Changesimport { Observable } from "rxjs";export class Myservice {getprods(){let obj=new Observable((observer)=>{//write unit of code for async execlet prods:string[]=["htc","samsung","dell"];observer.next(prods);observer.complete();});return obj;//returning observable object to a component,//component will register callback funcs to observable//using subscribe method,this callback funcs can be called//using observer.next,..}}component.tsimport { Component, OnDestroy, OnInit } from '@angular/core';import { Myservice } from './myservice';@Component({selector: 'app-observabledemo',templateUrl: './observabledemo.component.html',styleUrls: ['./observabledemo.component.css']})export class ObservabledemoComponent implements OnInit,OnDestroy {obj:Myservice;obsref:any;prods:any | undefined;constructor() {this.obj=new Myservice();}ngOnInit():void{this.obsref=this.obj.getprods().subscribe(data => this.prods = data);}ngOnDestroy(): void{this.obsref.unsubscribe();}}.html



No comments:
Post a Comment
Thank you for visiting my blog