Salvo

WFN Üye
Konular
1,759
Mesajlar
1,781
Çözüm
0
Ticaret Puanı
0
Üyelik
6 Ay 17 Gün
Konum
İstanbul
Web Sitesi
Yok
Alanı
Belirtmemiş
1/1
Konu sahibi
TypeScript’te bir içe aktarma yoluna takma ad vermek için tsconfig.json dosyasındaki compilerOptions.paths alanını kullanın. Ardından aynı eşlemeyi kodu çalıştıran veya paketleyen araçta da tanımlayın: TypeScript’in yol eşlemesi, üretilen JavaScript’teki import yolunu değiştirmez.

Yol takma adını tanımlayın​


Aşağıdaki varsayımsal örnekte proje kökünde tsconfig.json ve package.json, bunların yanında da src klasörü bulunur. TypeScript’in projede kurulu olduğunu varsayın. tsconfig.json dosyasını oluşturun veya mevcut ayarlarını koruyarak ilgili alanları ekleyin:

JSON:
{
  "compilerOptions": {
    "module": "nodenext",
    "rootDir": "./src",
    "outDir": "./dist",
    "paths": {
      "#app/*": ["./src/*"]
    }
  },
  "include": ["src"]
}

Bu eşleme, örneğin #app/math yolunu TypeScript’in src/math.ts dosyasında aramasını sağlar. Yıldız, takma addan sonraki kısmı hedef yola taşır. baseUrl tanımlı değilse hedef yol tsconfig.json dosyasının bulunduğu klasöre göre yorumlanır; bu örnek için ayrıca baseUrl eklemek gerekmez. Mevcut bir projede baseUrl varsa hedefi ona göre uyarlayın.

Şimdi src/math.ts dosyasını oluşturun:

Kod:
export function topla(a: number, b: number): number {
  return a + b;
}

Aynı klasördeki src/main.ts dosyasında fonksiyonu takma adla içe aktarın:

Kod:
import { topla } from "#app/math";

console.log(topla(2, 3));

Node.js için çalışma zamanı eşlemesini ekleyin​


Örneği doğrudan Node.js üzerinde çalıştırmak için proje kökündeki package.json dosyasına aşağıdaki alanları ekleyin; dosyada zaten başka alanlar varsa onları silmeyin:

JSON:
{
  "type": "module",
  "imports": {
    "#app/*": "./dist/*.js"
  }
}

Burada paths TypeScript’i kaynak dosyalara yönlendirirken imports, Node.js’i derlenmiş JavaScript dosyalarına yönlendirir. #app öneki bu örnekte Node.js’in paket içi import eşlemesiyle kullanılmak üzere seçilmiştir.

Dosyaları kaydedip proje kökünde sırasıyla şu komutları çalıştırın:

Kod:
npx tsc -p tsconfig.json
node dist/main.js

İlk komut başarılıysa dist klasöründe JavaScript çıktısı oluşur. İkinci komutun 5 yazdırması, örnekte hem derlemenin hem de Node.js’in takma adı çözmesinin başarılı olduğunu gösterir. Yalnızca TypeScript’in hata vermemesi ise çalışma zamanı eşlemesinin doğru olduğunu kanıtlamaz.

Modül bulunamıyorsa önce hata aşamasını ayırın. Derleme hatasında paths hedefini, dosya adını ve kullanılan tsconfig.json dosyasını kontrol edin. Derleme başarılı fakat Node.js hata veriyorsa package.json içindeki imports hedefinin oluşan dist/math.js dosyasına karşılık geldiğini doğrulayın ve yeniden derleyin. Paketleyici kullanan bir projede ise Node.js örneğindeki eşlemeyi otomatik varsaymayın; seçtiğiniz paketleyicinin çözümleme ayarlarında aynı takma adı tanımlayın.

Sık sorulan sorular​

Yol yerine içe aktarılan değişkenin adı değiştirilebilir mi?​

Evet. Bu ayrı bir işlemdir ve tsconfig.json ayarı gerektirmez. Örneğin import { topla as hesapla } from "./math.js"; ifadesi, dışa aktarılan topla fonksiyonunu yalnızca içe aktaran dosyada hesapla adıyla kullanır.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Foruma git ?

Bu konuyu görüntüleyen kullanıcılar

Bu konuyu şu anda görüntüleyen üye bulunmuyor.
Robotlar:
  • Anthropic