Ҳодисаҳои дученабаста дар Angular
Инчунин дар Angular метавон дученабастаи ҳодисаҳои ҳарду компонентро сохт: волидайн ва фарзанд. Биёед дар шаблони HTML-и фарзанд як вурудии бо дученабастаи номи корбар ва функсияеро, ки номро меивазад, созем:
<input [ngModel]="userName" (ngModelChange)="onNameChange($event)" />
Ба компоненти фарзанди худ гузашта ва
декоратори @Input-ро ба он ворид кунем.
Он барои кор бо вурудҳо зарур аст:
import { Component, Input, Output, EventEmitter } from '@angular/core';
Баъдан декоратори @Input-ро
ба номи корбар пайваст мекунем. Ва декоратори @Output
ба объекти userNameChange пайваст мекунем,
ки дар функсияи onNameChange даъват карда мешавад:
export class UserComponent {
@Input() userName: string = '';
@Output() userNameChange = new EventEmitter<string>();
onNameChange(model: string) {
this.userName = model;
this.userNameChange.emit(model);
}
}
Ҳоло ба компоненти асосӣ гузашта ва ба классаш хосияти ном илова мекунем:
export class AppComponent {
name: string = 'alex';
}
Ва дар шаблони HTML-и компоненти волидайн
пайвасти дуҷонибаи хосияти
userName бо қимати хосияти
name-и компоненти волидайнро иҷро мекунем:
<user-data [(userName)]="name"></user-data>
<p>Шумо номро интихоб кардед: {{ name }}</p>
Дученабастаи ҳодисаҳои компоненти волидайн ва фарзандро мувофиқи мисоли дар дарс овардашуда амалӣ кунед.
Дар асоси вазифаи қаблӣ дученабастаи соли корбарро созед.