Sorunuzu sorun ve bu sayfaya ve seçtiğiniz AI sağlayıcısına referans vererek belgenin bir özetini alın
Intlayer MCP Sunucusunu favori AI asistanınıza entegre ederek tüm belgeleri doğrudan ChatGPT, DeepSeek, Cursor, VSCode vb. üzerinden alabilirsiniz.
MCP Sunucu belgesini görüntüleSürüm Geçmişi
- Geçmiş başlatıldıv5.5.1029.06.2025
Bu sayfanın içeriği bir yapay zeka kullanılarak çevrildi.
Orijinal içeriğin İngilizce son sürümünü görüntüleyinBu dokümantasyonu geliştirmek için bir fikriniz varsa, lütfen GitHub'da bir çekme isteği göndererek katkıda bulunmaktan çekinmeyin.
Dokümantasyon için GitHub bağlantısıBelge Markdown'ını panoya kopyala
Dokümantasyon: express-intlayer Paketinde t Fonksiyonu
express-intlayer paketindeki t fonksiyonu, Express uygulamanızda yerelleştirilmiş yanıtlar sağlamak için temel yardımcıdır. Kullanıcının tercih ettiği dile göre içeriği dinamik olarak seçerek uluslararasılaştırmayı (i18n) basitleştirir.
Genel Bakış
t fonksiyonu, verilen bir dil seti için çevirileri tanımlamak ve almak için kullanılır. İstemcinin istek ayarlarına göre (örneğin Accept-Language başlığı) döndürülecek uygun dili otomatik olarak belirler. Tercih edilen dil mevcut değilse, yapılandırmanızda belirtilen varsayılan yerel ayara zarif bir şekilde geri döner.
Temel Özellikler
- Dinamik Yerelleştirme: İstemci için en uygun çeviriyi otomatik olarak seçer.
- Varsayılan Yerel Ayara Geri Dönme: İstemcinin tercih ettiği dil mevcut değilse, kullanıcı deneyimini sürdürmek için varsayılan yerel ayara geri döner.
- Hafif ve Hızlı: Yüksek performanslı uygulamalar için tasarlanmış, minimum ek yük sağlar.
- Katı Mod Desteği: Güvenilir davranış için bildirilen yerel ayarlara katı uyumu zorunlu kılar.
Fonksiyon İmzası
t(translations: Record<string, string>): string;Parametreler
- translations: Anahtarların yerel kodlar (örneğin en, fr, es-MX) ve değerlerin karşılık gelen çevrilmiş dizeler olduğu bir nesne.
Döndürür
- İstemcinin tercih ettiği dildeki içeriği temsil eden bir dize.
Uluslararasılaştırma İstek İşleyicisini Yükleme
express-intlayer tarafından sağlanan uluslararasılaştırma işlevinin doğru çalışmasını sağlamak için, Express uygulamanızın başında uluslararasılaştırma ara yazılımını yüklemeniz gerekir. Bu, t fonksiyonunu etkinleştirir ve yerel algılama ve çeviri işlemenin düzgün yapılmasını sağlar.
Tüm yolların uluslararasılaştırmadan faydalanmasını sağlamak için app.use(intlayer()) ara yazılımını uygulamanızdaki herhangi bir yoldan önce yerleştirin:
Kodu panoya kopyala
import express, { type Express } from "express";import { intlayer } from "express-intlayer";const app: Express = express();// Uluslararasılaştırma istek işleyicisini yükleapp.use(intlayer());// Ara yazılım yükledikten sonra yollarınızı tanımlayınapp.get("/", (_req, res) => { res.send( t({ en: "Hello, World!", fr: "Bonjour le monde!", es: "¡Hola, Mundo!", }) );});Neden Gerekli
- Yerel Algılama: intlayer ara yazılımı, başlıklara, çerezlere veya diğer yapılandırılmış yöntemlere göre kullanıcının tercih ettiği yerel ayarı algılamak için gelen istekleri işler.
- Çeviri Bağlamı: t fonksiyonunun doğru çalışması için gerekli bağlamı kurar, çevirilerin doğru dilde döndürülmesini sağlar.
- Hata Önleme: Bu ara yazılım olmadan, t fonksiyonunu kullanmak, gerekli yerel bilgileri mevcut olmadığı için çalışma zamanı hatalarına neden olur.
Kullanım Örnekleri
Temel Örnek
Farklı dillerde yerelleştirilmiş içerik sunun:
Kodu panoya kopyala
app.get("/", (_req, res) => { res.send( t({ en: "Welcome!", fr: "Bienvenue!", es: "¡Bienvenido!", }) );});İstemci İstekleri:
- Accept-Language: fr ile bir istemci Bienvenue! alır.
- Accept-Language: es ile bir istemci ¡Bienvenido! alır.
- Accept-Language: de ile bir istemci Welcome! alır (varsayılan yerel ayar).
Hataları İşleme
Hata mesajlarını birden fazla dilde sağlayın:
Kodu panoya kopyala
app.get("/error", (_req, res) => { res.status(500).send( t({ en: "An unexpected error occurred.", fr: "Une erreur inattendue s'est produite.", es: "Ocurrió un error inesperado.", }) );});Yerel Varyantları Kullanma
Yerel ayara özel varyantlar için çeviriler belirtin:
Kodu panoya kopyala
app.get("/greet", (_req, res) => { res.send( t({ en: "Hello!", "en-GB": "Hello, mate!", fr: "Bonjour!", "es-MX": "¡Hola, amigo!", "es-ES": "¡Hola!", }) );});Gelişmiş Konular
Geri Dönme Mekanizması
Tercih edilen yerel mevcut değilse, t fonksiyonu yapılandırmada tanımlanan varsayılan yerel ayara geri döner:
Kodu panoya kopyala
import { Locales, type IntlayerConfig } from "intlayer";const config = { internationalization: { locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], defaultLocale: Locales.ENGLISH, },} satisfies IntlayerConfig;export default config;Örneğin:
- defaultLocale Locales.CHINESE ise ve bir istemci Locales.DUTCH isterse, döndürülen çeviri Locales.CHINESE değerine varsayılan olur.
- defaultLocale tanımlanmamışsa, t fonksiyonu Locales.ENGLISH değerine geri döner.
Katı Mod Zorunluluk
t fonksiyonunu bildirilen yerel ayarlara katı uyumu zorunlu kılmak için yapılandırın:
| Mod | Davranış |
|---|---|
| strict | Tüm bildirilen yerel ayarlar için çeviriler sağlanmalıdır. Eksik yerel ayarlar hata atar. |
| inclusive | Bildirilen yerel ayarlar için çeviriler gereklidir. Eksik yerel ayarlar uyarı tetikler ancak kabul edilir. |
| loose | Bildirilen olmayan herhangi bir mevcut yerel ayar kabul edilir. |
Yapılandırma Örneği:
Kodu panoya kopyala
import { type IntlayerConfig } from "intlayer";const config = { // ... Mevcut yapılandırmanız internationalization: { // ... Mevcut uluslararasılaştırma yapılandırmanız strictMode: "strict", // Katı modu zorunlu kıl },} satisfies IntlayerConfig;export default config;TypeScript Entegrasyonu
t fonksiyonu TypeScript ile kullanıldığında tür güvenlidir. Tür güvenli çeviriler nesnesi tanımlayın:
Kodu panoya kopyala
import { type LanguageContent } from "express-intlayer";const translations: LanguageContent<string> = { en: "Good morning!", fr: "Bonjour!", es: "¡Buenos días!",};app.get("/morning", (_req, res) => { res.send(t(translations));});Yaygın Hatalar ve Sorun Giderme
| Sorun | Neden | Çözüm |
|---|---|---|
| t fonksiyonu çalışmıyor | Ara yazılım yüklenmemiş | app.use(intlayer()) öğesinin yollar öncesi eklendiğinden emin olun. |
| Eksik çeviriler hatası | Tüm yerel ayarlar olmadan katı mod etkin | Tüm gerekli çevirileri sağlayın. |
Etkili Kullanım İçin İpuçları
- Çevirileri Merkezi Hale Getirin: Bakım kolaylığını artırmak için merkezi bir modül veya JSON dosyaları kullanarak çevirileri yönetin.
- Çevirileri Doğrulayın: Gereksiz geri dönmeyi önlemek için her dil varyantının karşılık gelen bir çeviriye sahip olduğundan emin olun.
- Ön Uç i18n ile Birleştirin: Uygulamada sorunsuz bir kullanıcı deneyimi için ön uç uluslararasılaştırmayla senkronize edin.
- Performansı Ölçün: Minimum etkiyi sağlamak için çeviriler ekledikten sonra uygulamanızın yanıt sürelerini test edin.
Sonuç
t fonksiyonu, arka uç uluslararasılaştırması için güçlü bir araçtır. Bunu etkili bir şekilde kullanarak, küresel bir kitle için daha kapsayıcı ve kullanıcı dostu bir uygulama oluşturabilirsiniz. Gelişmiş kullanım ve detaylı yapılandırma seçenekleri için dokümantasyona bakın.