React Router Nedir?

React Router Nedir?

React Router, React uygulamalarındaki navigasyon yönetimini kolaylaştıran bir kütüphanedir SPA yapısına dönüştürerek sayfa yenilemesine gerek kalmadan sayfalar arasında geçiş yapılmasını sağlar Nested yönlendirmeler, dinamik URL'ler ve parametreler gibi özellikleri yönetebilir Sosyal medya uygulamalarında, kullanıcıların hızlı ve kolay bir şekilde gezinmelerini sağlayarak performansı artırır React Router'ın farklı router tipleri BrowserRouter, HashRouter, MemoryRouter kullanabilirsiniz Ana sayfadaki farklı yapılar ve içerikler için routing işlemleri oldukça kolaydır

React Router Nedir?

React Router, React uygulamalarındaki navigasyon yönetimini kolaylaştırmak için geliştirilen bir kütüphanedir. Bu kütüphane, uygulamanın farklı sayfalarına yönlendirme yapılabilmesine olanak sağlayarak, kullanıcıların uygulama içinde kolayca gezinmesini sağlar.

React Router, React uygulamalarını SPA (Single Page Application) yapısına dönüştürür ve sayfalar arasında geçiş yaparken sayfa yenilemesine gerek kalmaz. Bu da kullanıcı deneyimini artırarak uygulama performansını artırır.

React Router, React uygulamaları için gerekli olan tüm yönlendirme özelliklerini sağlar. Bu kütüphane ile uygulama içindeki sayfalar, nested (iç içe) yönlendirmeler, dinamik URL'ler ve parametreler gibi özellikler kolayca yönetilebilir. Ayrıca, React Router, Redux gibi diğer kütüphaneler ile entegre edilebilir ve uygulamanın gereksinimlerine uygun şekilde özelleştirilebilir.


React Router Kullanmak

React Router, React uygulamalarında sayfa yönlendirmesi yapabilmemizi sağlayan bir kütüphanedir. Kullanımı oldukça kolaydır ve uygulamalarımızın navigasyonunu yönetmemize olanak tanır. React uygulamalarında routing yapabilmek için React Router kurulumu yapmamız gerekmektedir.

React Router'ı projemize dahil etmek için öncelikle npm üzerinden paketlerini yüklemeliyiz. Bunun için aşağıdaki kodu kullanabiliriz:

npm install react-router-dom

Ardından, sayfalarımızı yönlendirmek için aşağıdaki kodu ekleyebiliriz:

{`import { BrowserRouter as Router, Route } from 'react-router-dom';function App() {  return (          
);}export default App;`}

Bu kodda, App component'i içerisindeki Router component'i ile sayfalarımızı yönlendirebileceğiz. exact path="/" belirtilen route anasayfayı belirtirken, diğer path'ler de hakkımızda ve iletişim sayfalarını belirtmektedir.

Bu şekilde react router kullanarak sayfalarımız arasında yönlendirme yapabiliriz. Ayrıca, birden fazla component'i de yönlendirebiliriz. React Router'ın sunduğu geniş seçeneklerle, web uygulamalarımızın navigasyonunu kolaylıkla yönetebiliriz.


Sosyal Medya Uygulamalarında React Router

Sosyal medya uygulamalarının günümüzdeki popülerliği giderek artmakta ve bu uygulamaların içerisinde navigasyon yönetimi oldukça önemli hale gelmektedir. Bu noktada, React Router kütüphanesi sosyal medya uygulamalarında navigasyon yönetimi için oldukça uygun bir seçenek olarak öne çıkmaktadır.

React Router kullanarak, sayfalar arasında geçiş yapılırken tarayıcının sayfayı yenilemesi yerine sadece virtual DOM üzerinde değişiklikler yapılarak, daha hızlı bir navigasyon işlemi gerçekleştirilir. Özellikle sosyal medya uygulamalarında, kullanıcıların sayfalar arasında hızlı ve kolay bir şekilde gezinmeleri oldukça önemlidir ve React Router kullanarak bu gereksinimler karşılanabilir.

Özellik Açıklama
BrowserRouter Tarayıcı kullanarak URL’ler ile yönlendirme sağlar
HashRouter # ile URL’ler ile yönlendirme sağlar
MemoryRouter Bellek kullanarak yönlendirme sağlar

React Router kütüphanesi, farklı türde router tipleri sunar. BrowserRouter, HashRouter, ve MemoryRouter en sık kullanılan router tipleridir. BrowserRouter, tarayıcı kullanarak URL’ler ile yönlendirme sağlar. HashRouter ise # ile URL’ler ile yönlendirme yaparken, MemoryRouter bellek kullanarak yönlendirme sağlar. Bu router tiplerinden bir tanesinin seçimi, uygulama ihtiyacına göre değişebilir.

  • BrowserRouter: Kullanıcı sayfalar arasında geçiş yaparken itinayla düzenli URL yapısı kullanmak istiyorsanız, BrowserRouter kullanın.
  • HashRouter: Tek bir sayfa uygulaması yapılarının bağımsız URL yapısı varsa, HashRouter kullanmayı düşünebilirsiniz.
  • MemoryRouter: Tarayıcı geçmişi kaydedilmeyecek veya bağlamak için harici bir depolama sağlanamayacak durumlarda MemoryRouter seçilebilir.

Sosyal medya uygulamalarındaki gezinme işlemi, kullanıcıların farklı sayfalar arasında gezinmesini sağlar. Ana sayfa, pano sayfası, profil sayfası ve post sayfası gibi farklı sayfaların olduğu sosyal medya uygulamalarında, React Router kullanarak routing işlemleri yapılabilir. Bu sayede, kullanıcının farklı sayfalar arasında geçiş yapması için sayfayı yenilemesi gerekmez. Kullanıcı, React Router'ın sunduğu hızlı ve etkili navigasyon özelliklerinden faydalanarak, uygulamayı daha kolay bir şekilde kullanabilir.


Ana Sayfadaki Yapılar ve İçerikler için Routing

React Router, navigasyon yönetimi için geliştirilmiş bir kütüphanedir ve React uygulamalarında sıklıkla kullanılır. React Router'ın ana sayfadaki farklı yapılar ve içerikler için routing işlemleri oldukça kolaydır.

Örneğin, bir sosyal medya uygulamasında ana sayfada header, post listesi ve footer olabilir. React Router, bu farklı alanlara farklı path'ler atayarak yönlendirmeleri sağlar. Header'a /, post listesine /posts, footer'a ise /footer path'i atayarak farklı alanlara erişim sağlayabilirsiniz.

Path Açıklama
/ Ana sayfa
/posts Post listesi
/footer Footer

Bu gibi yapılar için React Router kullanarak uygulama kullanıcı deneyimini arttırabilir ve hızlı bir navigasyon sağlayabilirsiniz. Ayrıca, farklı path'lere parametre ekleyerek dinamik içerikler de yönetebilirsiniz.

  • Örnek olarak; /post/:id şeklinde belirtilen path'e tıklanınca, parametre olarak verilen id'ye göre post sayfası açılabilir.

Bu şekilde React Router kullanarak, ana sayfadaki farklı yapı ve içeriklerin routing işlemleri kolaylıkla yapılabilmektedir.


Pano Sayfası İçin Routing

Pano sayfası, sosyal medya uygulamalarının en önemli bölümlerinden biridir. Kullanıcıların takip ettikleri konularda ve ilgilendikleri alanlarda en son paylaşılan gönderileri görebildiği bir bölümdür. Bu nedenle, pano sayfasının doğru bir şekilde yönetilmesi oldukça önemlidir.

React Router kullanarak pano sayfasında navigasyon yönetimi yapmak oldukça kolaydır. Örneğin, kullanıcıların takip ettiği konulara göre farklı sayfalarda gönderileri listelemek isteyebilirsiniz. Bunu yapmak için React Router'ı kullanarak gönderilerin farklı konularda listeleneceği sayfalar oluşturabilirsiniz. Ayrıca, kullanıcıların kendi gönderilerini gözden geçirmeleri için ayrı bir sayfa da oluşturabilirsiniz.

Yapılar Path
Takip Edilen Konular /pano/takip-edilen
Kişisel Gönderiler /pano/kişisel-gönderiler
  • Takip Edilen Konular: Kullanıcının takip ettiği konulara göre en son paylaşılan gönderiler.
  • Kişisel Gönderiler: Kullanıcının kendi paylaşımlarına ulaşabileceği sayfa.

Pano sayfasında kullanabileceğiniz diğer yapılar arasında ana sayfada olduğu gibi filtreleme seçenekleri, arama çubuğu ve gönderi içeriğini detaylı görüntüleme seçenekleri yer alabilir. Bu yapıları da React Router ile kolayca yönetebilirsiniz. Böylece uygulama içerisinde kolay bir navigasyon sağlayarak kullanıcıların işlemlerini gerçekleştirmelerini kolaylaştırabilirsiniz.


Profil Sayfası İçin Routing

Profil sayfası, sosyal medya uygulamalarının en önemli sayfalarından biridir. İçerdiği bilgiler sayesinde diğer kullanıcılarla etkileşim kurulur ve ağın genişlemesi sağlanır. Profil sayfasında bulunan farklı yapılara göre React Router kullanımı oldukça önemlidir.

Profil sayfasında navigasyon yönetimini örneklemek gerekirse; kullanıcının profil bilgileri, gönderileri ve yorumları gibi farklı yapılar yer alır. Bu yapılar sayfada farklı bileşenlerin gösterimini sağlar. React Router kullanarak bu yapılar arasında geçişler kolaylıkla yönetilebilir.

Örneğin, profil fiziksel görünümü için bir bileşen, kullanıcının gönderilerinin bulunduğu bölüm için başka bir bileşen ve yorumların bulunduğu bölüm için başka bir bileşen olabilir. Bu bileşenleri Router ile yöneterek sayfa yenilenmeden bileşenler arasında geçiş yapılabilir. Bu hem kullanıcı deneyimini hem de uygulamanın hızını arttırır.

Bu örneklerin yanı sıra, profil sayfasında kullanıcı tarafından düzenlenebilen ek bilgiler gibi farklı yapılar da bulunabilir. Kullanıcının bu alanları düzenlemesi sonucu oluşan değişiklikler, React Router kullanılarak kullanıcıya anında gösterilebilir. Böylece kullanıcıya sayfa yenileme ihtiyacı olmadan güncellenmiş veriler sunulur.

Tüm bu özellikler, profil sayfasındaki farklı yapılara göre React Router kullanımını kaçınılmaz hale getirir. Bu sayede kullanıcılara hızlı ve kolay bir deneyim sunulur.


Post Sayfası İçin Routing

React Router kütüphanesi, sosyal medya uygulamalarında sıklıkla kullanılan post sayfaları için de özelleştirilebilir routing seçenekleri sunar. Bu sayfada, postların kategorize edilmesi, filtrelenmesi veya sıralanmasına ilişkin yönlendirmeler yapılabilir.

Örneğin, bir kullanıcının sadece belirli bir kategorideki postları görüntülemek istemesi durumunda, URL yapısı "/posts/category" şeklinde olabilir. Kullanıcının belirli bir postu görüntülemek istemesi durumunda, URL yapısı "/posts/id" şeklinde belirlenebilir.

React Router'ın dinamik routing özelliği sayesinde, farklı post ID'leri ile çalışabilen tek bir bileşen tasarlayabilirsiniz. Bunun için "Route" bileşeninin "path" propunu şablon dizesi halinde belirleyebilirsiniz. Örneğin, aşağıdaki kod bloğu, belirli bir post ID'sine dayalı bir gönderi sayfası için bir yol tanımlar:

``````

Bu sayede, "/posts/1" URL'si kullanıldığında, "PostPage" bileşenine gönderi ID'sini değişken olarak geçirebilirsiniz. Bu yöntem, farklı sayfa içeriklerini aynı bileşen üzerinde yeniden kullanmayı ve kod tekrarını önlemeyi kolaylaştırır.

Ayrıca, sayfa içerisindeki farklı öğelerin (yorumlar, etiketler vb.) belirli URL'lere bağlanarak ayrı sayfalarda görüntülenebilmesi için de farklı yönlendirme seçenekleri mevcuttur. Bu sayede, kullanıcılar farklı öğeler arasında hızlı ve kolay bir şekilde geçiş yapabilirler.

Overall, React Router'ın sağladığı routing seçenekleri sayesinde, sosyal medya uygulamalarındaki post sayfalarının yönlendirmeleri tamamen özelleştirilebilir hale gelmektedir.


React Router ve Redux Entegrasyonu

React Router ve Redux, birlikte kullanıldığında daha verimli bir navigasyon yönetimi sağlar. React Router ile sayfalar arasındaki geçişler kolayca yapılırken, Redux state yönetimi sayesinde uygulama daha düzenli bir şekilde çalışır.

React Router ve Redux kullanarak bir sosyal medya uygulaması geliştirirken, örneğin ana sayfada kullanıcıların gönderilerini görüntüleyebilir, pano sayfasında kullanıcıların takip ettiği kişilerin paylaşımlarını görebilir ve profil sayfasında kullanıcının kendi profil bilgilerini düzenleyebilirsiniz.

Redux, uygulamanın global state yönetimini sağlarken, React Router sadece yönlendirme işlemlerini yapar. Bu nedenle, react-redux paketi ile birlikte kullanılması gereklidir. Redux'taki store'lar ve action'lar, Router tarafından yönetilir.

Örneğin, redux'un combineReducers fonksiyonu ile oluşturulan bir reducer dosyası export edilir ve ilgili route component'i içinde birleştirilir. Böylece, Redux store'ları ile React Router kullanımı birlikte sağlanmış olur.

Ayrıca, React Router ve Redux arasındaki bağlantıyı sağlamak için, react-redux paketindeki Provider bileşeni kullanılır. Provider bileşeni, uygulamanın en üst düzeyinde kullanılır ve store'ları tüm componentlerin kullanımına açar.

React Router ve Redux entegrasyonu sayesinde, uygulama daha düzenli bir şekilde çalışırken aynı zamanda daha verimli bir yönlendirme sağlanır.


React Router ve Redux Uygulaması

React Router ve Redux, birlikte kullanıldığında inanılmaz derecede güçlü bir kombinasyondur. Bu ikili, navigasyon yönetimi, global durum yönetimi, bileşenlerin hızlı ve verimli bir şekilde yüklenmesi ve daha birçoğu dahil olmak üzere pek çok alanda yardımcı olabilir.

Sosyal medya uygulamaları, bu iki kütüphanelerin birlikte kullanımı için mükemmel bir örnek olabilir. Bu uygulamalar, çok sayıda sayfaya, özelliklere ve bileşenlere sahiptir ve kullanıcılarına sorunsuz bir deneyim sunmak için navigasyonları doğru ve etkili bir şekilde yönetmek zorundadırlar.

Bir sosyal medya uygulaması geliştirmek istiyorsanız, React Router ve Redux kullanarak bu deneyimi çok daha kolay hale getirebilirsiniz. React Router, sayfalar arasındaki geçişleri yönetirken Redux global durum yönetimini sağlayacak. Böylece, uygulamanızın farklı bileşenleri arasında veri akışını yönetmek çok daha kolaydır.

React Router ve Redux Uygulaması Örnekleri İşlevleri
Ana Sayfa Uygulamanın ana sayfasıdır ve kullanıcılara içerikleri keşfetme imkanı sunar
Profil Sayfası Kullanıcı profillerini görüntülemek için kullanılır
Gönderi Sayfası Kullanıcıların diğer kullanıcıların gönderilerini görüntülemesine ve yorum yapmasına olanak tanır
Mesajlaşma Sayfası Kullanıcıların birbirleriyle mesajlaşmalarına olanak tanır

React Router ve Redux kullanarak, her sayfa için ayrı bir bileşen oluşturabilirsiniz. Ardından, her bileşenin birincil amaçlarına yönelik farklı özellikleri ve işlevleri içeren alt bileşenler ekleyebilirsiniz. Bu sayede kullanıcıların uygulamanızdaki gezinmesi çok daha kolay hale gelecek ve uygulamanızın tüm bileşenleri arasındaki veri akışı kolaylaşacaktır.

React Router ve Redux, sosyal medya uygulamaları gibi büyük ve karmaşık uygulamalarda kullanılmak üzere tasarlanmıştır. Bu kombinasyonu kullanarak, uygulamanızın kullanıcılarına sorunsuz bir deneyim sunabilirsiniz. Hem React Router hem de Redux kütüphanelerinin özellikleri son derece kullanışlıdır ve birbirlerini tamamlarlar. Dolayısıyla, her ikisini birlikte kullanarak, uygulamanızın başarısını artırabilir ve kullanıcılarınızın memnuniyetini artırabilirsiniz.