SPA Nedir ve Neden Angular?
Angular, Google tarafından geliştirilen güçlü bir framework'tür ve SPA geliştirme konusunda mükemmel bir seçenektir. TypeScript ile yazılan Angular, modüler yapısı, güçlü yönlendirme özellikleri ve geniş ekosistemi sayesinde SPA projeleriniz için harika bir temel sunar.
Angular ile SPA Geliştirmeye Başlamak
İlk adım olarak Angular CLI’yi (Command Line Interface) bilgisayarınıza kurmanız gerekiyor. Bunun için terminal veya komut satırını açarak şu komutu girin:
npm install -g @angular/cliBu komut, Angular CLI'yi global olarak yükler. Şimdi, yeni bir Angular projesi oluşturmak için şu komutu kullanabilirsiniz:
ng new my-spa-project"my-spa-project" yerine istediğiniz proje adını yazabilirsiniz. Komut çalıştıktan sonra, size bazı seçenekler sunulacak; projenizde hangi özelliklerin olacağını seçebilirsiniz.
# 2. Angular Projesi Oluşturma
cd my-spa-projectVe projeyi başlatın:
ng serveBu komut, projeyi yerel sunucuda çalıştıracak ve genellikle `http://localhost:4200` adresinde erişilebilir hale getirecektir.
# 3. Routing (Yönlendirme) Eklemek
Öncelikle, projenize yönlendirme modülünü eklemeniz gerekiyor. Bunu yapmak için `app-routing.module.ts` dosyasını oluşturun ve içerisine şu kodu ekleyin:
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { HomeComponent } from './home/home.component';
import { AboutComponent } from './about/about.component';
const routes: Routes = [
{ path: '', component: HomeComponent },
{ path: 'about', component: AboutComponent }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }Burada iki rota belirledik: birincisi ana sayfa (`HomeComponent`), ikincisi ise hakkında sayfası (`AboutComponent`). Bu dosyayı oluşturduktan sonra, `app.module.ts` dosyanızda AppRoutingModule'i içeri aktarın:
import { AppRoutingModule } from './app-routing.module';Ve `imports` array'ine ekleyin:
imports: [
BrowserModule,
AppRoutingModule
]# 4. Bileşenler ve HTML Yapısı
Her bileşen için bir HTML dosyası, bir CSS dosyası ve bir TypeScript dosyası olacaktır. Örnek olarak, `HomeComponent`’in TypeScript dosyasına şu kodu ekleyelim:
import { Component } from '@angular/core';
@Component({
selector: 'app-home',
templateUrl: './home.component.html',
styleUrls: ['./home.component.css']
})
export class HomeComponent {
title = 'Ana Sayfa';
}Bileşenin HTML dosyasına ise basit bir yapı ekleyebiliriz:
{{ title }}
Angular SPA ile geliştirilen uygulamanıza hoş geldiniz!
# 5. Navigasyon (Gezinme) Linkleri
`app.component.html` dosyasına şu satırları ekleyin:
`router-outlet` tag'i, Angular'ın yönlendirme sisteminin hangi bileşenin görüntüleneceğini belirlediği yerdir. Bu sayede, hangi rotaya gidildiğinde, o rota ile ilişkilendirilmiş bileşen ekrana gelir.