Bileşenlerle çalışırken, diğer bileşenlere bir şeyin gerçekleştiğini bildirmek gerekebilir. Belki bir butona tıklanmış, bir öğe listeden eklenmiş/çıkarılmış veya başka önemli bir güncelleme olmuştur. Bu senaryoda bileşenlerin üst bileşenlerle iletişim kurması gerekir.
Angular bu tür bir davranışı sağlamak için output() fonksiyonunu kullanır.
NOTE: Çıkış özellikleri kılavuzundaki özel olaylar hakkında daha fazla bilgi edinin.
Bu aktivitede, bileşenlerle iletişim kurmak için output() fonksiyonunu nasıl kullanacağınızı öğreneceksiniz.
Alt bileşenden üst bileşene iletişim yolunu oluşturmak için, bir sınıf özelliğini başlatmak üzere output fonksiyonunu kullanın.
Artık bileşen, üst bileşen tarafından dinlenebilecek olaylar üretebilir. emit metodunu çağırarak olayları tetikleyin:
child.ts
class Child {
...
onClick() {
this.count++;
this.incrementCountEvent.emit(this.count);
}
}
emit fonksiyonu, output tarafından tanımlanan türle aynı türde bir olay üretecektir.
Pekala, şimdi sıra sizde. Aşağıdaki görevleri takip ederek kodu tamamlayın:
-
Bir
output()özelliği ekleyinchild.tsdosyasını,addItemEventadında bir output özelliği ekleyerek güncelleyin ve output türünüstringolarak ayarladığınızdan emin olun. -
addItemmetodunu tamamlayınchild.tsdosyasındaaddItemmetodunu güncelleyin; mantık olarak aşağıdaki kodu kullanın:child.ts
addItem() { this.addItemEvent.emit('🐢'); } -
Appşablonunu güncelleyinapp.tsdosyasında, yayılan olayı dinlemek için aşağıdaki kodu ekleyerek şablonu güncelleyin:<app-child (addItemEvent)="addItem($event)" />Artık "Add Item" butonuna her tıklandığında listeye yeni bir öğe eklenir.
Bu noktada bileşen temellerini tamamladınız - etkileyici 👏
Angular'ın daha fazla harika özelliğini keşfetmek için öğrenmeye devam edin.