Bir girdinin değerini ana bileşene aktarmak istiyorum. Şu anda tüm girdinin ElementRef
çocuk bileşenimden gönderiyorum. Bunu yapmanın zarif bir yolu var mı? Demek istediğim, bir referans değil, sadece bir numara göndermem gerekiyor.Bir ana bileşene giriş değeri nasıl aktarılır
Çocuk Bileşen:
import { Component, ViewChild } from '@angular/core';
@Component({
selector: 'app-action-dialog-content',
template: `
<md-input-container>
<input #amount md-input placeholder="Amount">
<span md-suffix>€</span>
</md-input-container>
`
})
export class ActionDialogContentComponent {
@ViewChild('amount') amount;
}
Ana Bileşen:
import { Component, ViewChild } from '@angular/core';
import { ActionDialogContentComponent } from './../action-dialog-content/action-dialog-content.component';
@Component({
selector: 'app-action-dialog',
template: `
<app-action-dialog-content></app-action-dialog-content>
<md-dialog-actions>
<button md-raised-button (click)="sendData()">ADD</button>
</md-dialog-actions>
`
})
export class ActionDialogComponent {
@ViewChild(ActionDialogContentComponent) amountInput: ActionDialogContentComponent;
sendData() {
console.log(this.amountInput.amount.nativeElement.value);
}
}
kontrol Daha fazla ayrıntı için 'EventEmitter' kullanabileceğiniz bu https://angular.io/docs/ts/latest/cookbook /component-communication.html#!#child-to-parent – rashfmnb