Photo by David Clode on Unsplash

React UI Mechanics

React UI Bileşinini Birbiri ile Nasıl Konuştururuz ?

Onur Dayıbaşı
Frontend Development With JS
2 min readNov 15, 2020

--

Not: React UI Mekanikleri ile ilgili tüm yazı serisine bu linkten erişebilirsiniz.

App FooView bileşenini ekledik. Bu bileşen kişinin yaşını ve doğum yılını gösteriyordu. Bu işlemi yaparken props ve state özelliklerini kullanıyordu.

  1. Bu yazıda DooView bileşeni oluşturacağız. İlk aşamada bu bileşen sadece mevcut tarihin yılını girdiğimiz ve bu değeri ekranda gösteren bir bileşen olacak
  2. Daha sonra bu bileşen ile FooView bileşenini birleştireceğiz. DooView içerisine girdiğimiz değeri FooView bileşeninin kullanmasını sağlayacağız. Bu yönteme Lifting State Up (State yukarı taşıma) denir.

1. DooView Bileşenin Oluşturalım.

  • components klasörü içerisine DooView bileşenini ekliyoruz.
  • bileşen içerisinde bir text input birde span elemanı bulunur.
  • input handleChange ile girilen değeri yıl değeri olarak span elemanın içerisine yazdırılır.
  • Bu nesneyi de App.js içerisine FooView altına ekleyelim
<FooView/>
<DooView/>
DooView Oluşturalım.
  • İki bileşende ekranda gözükmektedir. Ve birbirlerinden bağımsız olacak çalışabilmektedir.
  • Peki 2 bileşen FooView ve DooView birlikte çalışşın istersek.

2. FooView , DooView içerisindeki State (Mevcut) Yılı kullansın İstersek

  • Bunun için DooView içerisindeki state ve state değişimini yöneten kod parçalarını FooView ile ortak parent içerisine taşımamız lazım. Buda bu mantık kodlarını App.js taşıyacağımız anlamına geliyor.
  • DooView kendisine geçirilen props içerisinde handleChange ve year bilgileri kullanacak hale getiriyoruz.
<DooView handleChange={this.handleChange}
year={year}
State Bir Üst Ortak Bileşene Taşıma
  • Bu year değerini FooView kullanabilmesi için bunu aynı zamanda props olarak FooView geçiyoruz.
<FooView year={year}/>
  • Bu sayede artık ister yılı değiştirelim, ister yaşını değiştirelim 2 side mevcut doğum yılını güncelleyecektir. Bu sayede FooView, DooView bileşenindeki değeri kullanabilir oldu ama state bilgisini Lifting State Up (State yukarı taşıma) App.js içerisine taşıyarak yaptık.

Kod Örnekleri

Referanslar

Okumaya Devam Et 😃

Bu yazının devamı veya yazı grubundaki diğer yazılara erişmek için bu linke tıklayabilirsiniz.

--

--