0Pricing
Angular Academy · Ders

Sağlayıcılar ve Kapsamlar

Hizmetlerin ağaçta nerede yaşayacağını denetleyin.

Sağlayıcılar ve Kapsamlar, CoddyKit'te ücretsiz bir Angular Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Angular Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Angular Academy kursu toplamda 4 dersten oluşur.

Sağlayıcılar ve kapsamlar

Sağlayıcı, Angular'a bir bağımlılığın nasıl oluşturulacağını bildirir. Kaydedildiği kapsam, kaç örneğin bulunacağını ve bu örnekleri kimlerin paylaşacağını belirler.

Kök kapsamı

providedIn: root, bir servisi kök enjektöre kaydeder: uygulamanın tamamı için paylaşılan tek bir singleton oluşturur. Bu, en sık kullanılan seçenektir.

@Injectable({ providedIn: 'root' })
export class AppStore {}

Bileşen sağlayıcıları

Bir servisi, bileşenin providers dizisinde listeleyerek bileşen kapsamına alabilirsiniz. Bu bileşenin her örneği, servisin kendine ait bir örneğini alır.

import { Component } from '@angular/core';
import { LocalStore } from './local-store';

@Component({
  selector: 'app-panel',
  providers: [LocalStore],
  template: ''
})
export class PanelComponent {}

Bileşen kapsamı neden kullanılır

Her bileşen örneğinin form durumu nesnesi veya pencere öğesine özel bir store gibi kendi yalıtılmış durumuna ihtiyaç duyduğu durumlarda bileşen kapsamlı sağlayıcıları kullanın.

Kök ve bileşen karşılaştırması

Kök: her yerde paylaşılan tek örnek. Bileşen: her bileşen örneği (ve alt bileşenleri) için bir örnek. Durumun paylaşılması mı yoksa yalıtılması mı gerektiğine göre seçim yapın.

Enjektör hiyerarşisi

Angular enjektörleri bir ağaç oluşturur. Bir bağımlılığı çözerken Angular önce bileşen enjektörüne bakar, ardından üst bileşenlere ve son olarak köke doğru ilerler.

Alt bileşenler devralır

Bir bileşende sağlanan servis, alt bileşen kendi örneğini sağlayarak üst bileşendeki örneği gölgelemediği sürece o bileşenin alt bileşenlerinde de kullanılabilir.

Uygulama düzeyindeki sağlayıcılar

Sağlayıcıları, bootstrapApplication öğesinin providers dizisinde önyükleme sırasında da kaydedebilirsiniz. Bu, kök kapsamına benzer ve çoğu zaman provide* işlevleri aracılığıyla yapılır.

// bootstrapApplication(AppComponent, {
//   providers: [provideHttpClient()]
// });

useClass ve useValue

Sağlayıcılar bir belirteci useClass ile bir sınıfa, useValue ile sabit bir değere veya useFactory ile bir fabrikaya eşleyebilir. Bu sayede yerine koyma ve yapılandırma mümkün olur.

// providers: [{ provide: Logger, useClass: ConsoleLogger }]

Uygulamaları değiştirme

Bir sağlayıcı belirteci bir uygulamaya eşlediğinden, tüketen kodu değiştirmeden uygulamaları değiştirebilirsiniz (örneğin testlerde bir taklit kullanabilirsiniz).

Kapsam seçme

Paylaşılan singleton'lar için varsayılan olarak root kapsamını kullanın. Bileşen sağlayıcılarını yalnızca örneğe özel yalıtılmış bir duruma ihtiyaç duyduğunuzda tercih edin.

Kısa kontrol: Kapsamlar

Örneğe özel durum.

Özet: Sağlayıcılar ve kapsamlar

Sağlayıcıların bağımlılıkların nasıl oluşturulacağını tanımladığını ve kapsamın örnek oluşturmayı denetlediğini öğrendiniz: uygulama genelindeki singleton'lar için root, örneğe özel yalıtım için bileşen sağlayıcıları kullanılır. Angular bir enjektör hiyerarşisi üzerinden çözümleme yapar; useClass, useValue ve useFactory ise uygulamaları değiştirmenize olanak tanır. Sırada enjeksiyon belirteçleri var.

Sıkça Sorulan Sorular

“Sağlayıcılar ve Kapsamlar” dersi ücretsiz mi?

Evet — “Sağlayıcılar ve Kapsamlar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Angular Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Angular Academy kursu toplamda 4 dersten oluşur.

“Sağlayıcılar ve Kapsamlar” dersinde ne öğreneceğim?

Hizmetlerin ağaçta nerede yaşayacağını denetleyin. Angular Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Angular Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Angular Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Sağlayıcılar ve Kapsamlar” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Angular Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Angular Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Hizmetler ve Injectable
  2. inject İşlevi
  3. Sağlayıcılar ve Kapsamlar
  4. Enjeksiyon Belirteçleri
← Angular Academy Sayfasına Dön