⊗jsagPmCMCDE 67 of 97 menu

Məlumatların valideyn komponentə ötürülməsi Angular-da

Uşaq komponentdən valideyn komponentə məlumatlar ötürülə bilər. Bu, xüsusi EventEmitter obyekti və emit metodu vasitəsilə hadisələr yaymaqla həyata keçirilir. Uşaq komponent bəzi məlumatları hadisə ilə birlikdə ötürərək hadisələr yayacaq, valideyn komponent isə valideyn komponentdən məlumatları alaraq hadisələri tutacaq.

Gəlin praktiki olaraq yoxlayaq. Bunun üçün bir sıra addımları yerinə yetirməliyik. Əvvəlcə uşaq komponentimizə @Output dekoratorunu və EventEmitter sinfini import edək:

import { Component, Output, EventEmitter } from '@angular/core';

İndi uşaq sinifdə onData xassəsi yaradaq, onun dəyəri sətir ehtiva edən yeni EventEmitter obyekti olacaq:

export class UserComponent { @Output() public onData = new EventEmitter<string>(); }

İndi send metodu yaradaq, onun çağırışı onData hadisəsini valideyn komponentə verilmiş mətnlə yayacaq:

export class UserComponent { @Output() public onData = new EventEmitter<string>(); send() { this.onData.emit('xxx'); } }

Uşaq komponentin templatində send metodunu çağıran bir düymə yaradaq:

<button (click)="send()"> send data </button>

Valideyn komponentdə onData metodunu yaradaq, bu metod avtomatik olarq uşaq komponentdən müvafiq hadisə yayıldıqda çağırılacaq. Metodun parametrinə ötürülən məlumatlar düşəcək:

export class AppComponent { public onData(data: string) { console.log(data); } }

Valideyn komponentin templatində uşaq komponent teqinə hadisə bağlayaq:

<app-user (onData)="onData($event)"></app-user>

Uşaq komponentdə müxtəlif hadisələr yayan üç düymə düzəldin. Yayılan hadisələri valideyn komponentdə tutun.

azbydeenesfrkakkptruuz