0Pricing
Angular Academy · Ders

inject İşlevi

Bağımlılıkları inject işleviyle çözümleyin.

inject İşlevi, CoddyKit'te ücretsiz bir Angular Academy dersidir. Bu, 4 dersinin 2. 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.

inject işlevi

inject() işlevi, enjektörden bir bağımlılık alır. Yapıcı parametreleriyle bağımlılık enjeksiyonuna kıyasla daha modern bir seçenektir.

Temel kullanım

İstediğiniz sınıfı inject'e iletin ve sonucu bir alana atayın.

import { Component, inject } from '@angular/core';
import { DataService } from './data.service';

@Component({ selector: 'app-x', template: '' })
export class XComponent {
  private data = inject(DataService);
}

Yapıcı enjeksiyonuyla karşılaştırma

Eski yaklaşımda bağımlılıklar yapıcı parametreleri olarak tanımlanır. inject(), alan başlatıcısı olarak aynı işi yapar ve bu yaklaşım çoğu zaman daha temizdir.

// old style:
// constructor(private data: DataService) {}

inject nerede çağrılabilir

inject(), bir enjeksiyon bağlamında çalışmalıdır: bir bileşen, yönerge veya servis oluşturulurken ya da alan başlatıcılarında ve sağlayıcı fabrika işlevlerinde.

Bir servise inject uygulama

inject'i servislerin içinde de kullanabilirsiniz; örneğin HttpClient'i almak için.

import { Injectable, inject } from '@angular/core';
import { HttpClient } from '@angular/common/http';

@Injectable({ providedIn: 'root' })
export class Api {
  private http = inject(HttpClient);
}

Daha az gereksiz kod

inject ile uzun yapıcı imzalarından kaçınabilirsiniz. Her bağımlılık, okunması ve sırasının değiştirilmesi kolay olan basit bir alan tanımıdır.

Enjekte edilen servisleri kullanma

Enjekte edildikten sonra servisi herhangi bir nesne gibi çağırabilirsiniz.

export class XComponent {
  private store = inject(CounterStore);
  add() { this.store.increment(); }
}

İşlevsel koruyucularda inject

İşlevsel rota koruyucuları ve çözümleyiciler bir enjeksiyon bağlamında çalışır. Bu nedenle servislere erişmek için içlerinde inject çağırabilirsiniz.

// export const authGuard = () => {
//   const auth = inject(AuthService);
//   return auth.isLoggedIn();
// };

İsteğe bağlı bağımlılıklar

inject seçenekleri kabul eder. Örneğin bir bağımlılığı isteğe bağlı olarak işaretleyebilirsiniz; böylece bağımlılık sağlanmadığında hata fırlatmak yerine null döndürür.

// const logger = inject(Logger, { optional: true });

Enjeksiyon bağlamının dışında

inject'i bir enjeksiyon bağlamının dışında çağırmak (örneğin bir setTimeout geri çağırmasında) hata fırlatır. Bunun yerine bağımlılığı oluşturma sırasında alın.

inject neden tercih edilir

inject, karışımlar, temel sınıflar ve işlevsel API'lerle iyi çalışır ve bileşen sınıflarını kısa tutar. Modern Angular'da önerilen yaklaşım budur.

Kısa kontrol: inject

Bir bağımlılığı alma.

Özet: inject

Bağımlılıkları almanın modern yolu olan inject() işlevini öğrendiniz. Bu işlev, enjeksiyon bağlamı içinde bileşenlerde, servislerde ve işlevsel koruyucularda kullanılabilir. Yapıcı enjeksiyonuna kıyasla gereksiz kodu azaltır ve optional gibi seçenekleri destekler. Sırada sağlayıcılar ve kapsamlar var.

Sıkça Sorulan Sorular

“inject İşlevi” dersi ücretsiz mi?

Evet — “inject İşlevi” 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.

“inject İşlevi” dersinde ne öğreneceğim?

Bağımlılıkları inject işleviyle çözümleyin. 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 2. dersidir.

“inject İşlevi” 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