CodeBlanks Logo Icon CodeBlanks

Türleri dışa aktarma

Ortak türleri bir barrel dosyasından dışa aktarırsın.

Barrel dosyası nedir?

Bir barrel dosyası (genellikle index.ts) birden çok modülden dışa aktarımları tek yerden yeniden dışa aktarır. Tüketici yalnızca tek bir yoldan içe aktarma yapar: import { x } from "./lib". Bu, iç dosya yapısını gizler ve API'yi sadeleştirir.

// index.ts (barrel)
export { Kitap } from "./types";
export { kitapEkle } from "./helpers";

Type-only yeniden dışa aktarım

Sadece tür olan dışa aktarımlar için export type kullanılır. Bu, derleyiciye söz konusu değerin çalışma zamanında var olmadığını, yalnızca tür bilgisi olduğunu bildirir. Özellikle isolatedModules açıkken türlerin ayrı belirtilmesi gerekir.

export type { Kitap } from "./types";
export { kitapEkle } from "./helpers";

Uygulama Kütüphane barrel nesnesi

kitapEkle(ad: string): string fonksiyonu ad + " eklendi" dönsün. kitapAra(ad: string): string fonksiyonu ad + " bulundu" dönsün. Kutuphane nesnesi her ikisini de içersin. Kutuphane.kitapEkle("TS") sonucunu console.log ile yazdır.

Başlangıç kodu

index.ts
// kitapEkle ve kitapAra fonksiyonlarını tanımla
// Kutuphane nesnesi ikisini de içersin
// Kutuphane.kitapEkle("TS") sonucunu yazdır

Örnek çözüm

index.ts
function kitapEkle(ad: string): string {
  return ad + " eklendi";
}
function kitapAra(ad: string): string {
  return ad + " bulundu";
}
const Kutuphane = { kitapEkle, kitapAra };
console.log(Kutuphane.kitapEkle("TS"));

Beklenen çıktı

TS eklendi

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Barrel dosyasının temel amacı nedir?

  • Birden çok modülün dışa aktarımını tek yerden toplamak Doğru cevap
  • TypeScript hatalarını gizlemek
  • Derleme hızını artırmak
  • Çalışma zamanı kodunu azaltmak

Açıklama: Barrel dosyası birden çok modülün dışa aktarımını tek dosyada toplar; tüketici tek import yolu kullanır.

2 Yeniden dışa aktarma

Soru
// index.ts
____ { kitapEkle } from "./helpers";
Cevap
// index.ts
export { kitapEkle } from "./helpers";

Açıklama: Başka bir modülden değeri yeniden dışa aktarmak için export { } from sözdizimi kullanılır.

3 Barrel kavramları

Kavram Anlamı
barrel Tek yerden toplu dışa aktarım
index.ts Barrel dosya adı
export { } from Yeniden dışa aktarım
export type Yalnızca tür dışa aktarımı

Orta seviye bölümündeki tüm dersler