Sorunuzu sorun ve bu sayfaya ve seçtiğiniz AI sağlayıcısına referans vererek belgenin bir özetini alın
Sürüm Geçmişi
- "Solid useIntlayer API kullanımını doğrudan özellik erişimine güncelle"v8.9.004.05.2026
- "init komutu ekle"v7.5.930.12.2025
- "İlk doküman"v5.8.009.09.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üleyinIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
Intlayer Kullanarak Nest Backend Web Sitenizi Çevirme | Uluslararasılaştırma (i18n)
express-intlayer, Express uygulamaları için güçlü bir uluslararasılaştırma (i18n) middleware'idir. İstemcinin tercihlerine dayalı olarak yerelleştirilmiş yanıtlar sağlayarak backend hizmetlerinizi küresel olarak erişilebilir hale getirmek için tasarlanmıştır. NestJS, Express üzerine inşa edildiğinden, express-intlayer'ı NestJS uygulamalarınıza sorunsuzca entegre edebilir ve çok dilli içeriği etkili bir şekilde yönetebilirsiniz.
Başlarken
Yeni Bir NestJS Projesi Oluşturun
Kodu panoya kopyala
npm install -g @nestjs/clinest new my-nest-appKurulum
express-intlayer'ı kullanmaya başlamak için paketi npm kullanarak yükleyin:
Kodu panoya kopyala
npx intlayer init --interactive--interactivebayrağı isteğe bağlıdır. Bir yapay zeka aracısıysanızintlayer-cli initkullanın.
Bu komut ortamınızı algılayacak ve gerekli paketleri yükleyecektir. Örneğin:
Kodu panoya kopyala
npm install intlayer express-intlayertsconfig.json'u Yapılandırın
Intlayer'ı TypeScript ile kullanmak için tsconfig.json'unuzun ES modüllerini destekleyecek şekilde ayarlandığından emin olun. Bunu module ve moduleResolution seçeneklerini nodenext olarak ayarlayarak yapabilirsiniz.
Kodu panoya kopyala
{ compilerOptions: { module: "nodenext", moduleResolution: "nodenext", // ... diğer seçenekler },}Kurulum
Proje kökünde bir intlayer.config.ts oluşturarak uluslararasılaştırma ayarlarını yapılandırın:
Kodu panoya kopyala
import { Locales, type IntlayerConfig } from "intlayer";
const config: IntlayerConfig = {
internationalization: {
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
defaultLocale: Locales.ENGLISH,
},
};
export default config;İçeriğinizi Bildirin
Çevirileri depolamak için içerik bildirimlerinizi oluşturun ve yönetin:
İçerik bildirimleriniz,contentDirdizinine dahil edildiği sürece uygulamanızın herhangi bir yerinde tanımlanabilir (varsayılan olarak./src). Ve içerik bildirim dosyası uzantısıyla eşleşmelidir (varsayılan olarak.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}).
Daha fazla detay için içerik bildirim dokümantasyonuna bakın.
Express Middleware Kurulumu
Uluslararasılaştırmayı yönetmek için express-intlayer middleware'ini NestJS uygulamanıza entegre edin:
Kodu panoya kopyala
import { MiddlewareConsumer, Module, NestModule } from "@nestjs/common";import { AppController } from "./app.controller";import { AppService } from "./app.service";import { intlayer } from "express-intlayer";@Module({ imports: [], controllers: [AppController], providers: [AppService],})export class AppModule implements NestModule { configure(consumer: MiddlewareConsumer) { consumer.apply(intlayer()).forRoutes("*"); // Tüm yollara uygula }}Hizmetlerinizde veya Denetleyicilerinizde Çevirileri Kullanın
Artık hizmetlerinizde veya denetleyicilerinizde çevirilere erişmek için getIntlayer fonksiyonunu kullanabilirsiniz:
Kodu panoya kopyala
import { Injectable } from "@nestjs/common";import { getIntlayer } from "express-intlayer";@Injectable()export class AppService { getHello(): string { return getIntlayer("app").greet; }}Uyumluluk
express-intlayer tamamen uyumludur:
- React uygulamaları için
react-intlayer - Next.js uygulamaları için
next-intlayer - Vite uygulamaları için
vite-intlayer
Ayrıca tarayıcılar ve API istekleri dahil çeşitli ortamlarda herhangi bir uluslararasılaştırma çözümüyle sorunsuz çalışır. Middleware'i başlık veya çerezler aracılığıyla yerel ayarları algılayacak şekilde özelleştirebilirsiniz:
Kodu panoya kopyala
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { // ... Diğer yapılandırma seçenekleri middleware: { headerName: "my-locale-header", cookieName: "my-locale-cookie", },};export default config;Varsayılan olarak, express-intlayer istemcinin tercih ettiği dili belirlemek için Accept-Language başlığını yorumlayacaktır.
Yapılandırma ve gelişmiş konular hakkında daha fazla bilgi için dokümantasyonumuzu ziyaret edin.
TypeScript'i Yapılandırın
express-intlayer, uluslararasılaştırma sürecini geliştirmek için TypeScript'in güçlü yeteneklerinden yararlanır. TypeScript'in statik yazımı, her çeviri anahtarının hesaba katılmasını sağlar, eksik çeviri riskini azaltır ve sürdürülebilirliği iyileştirir.


Otomatik oluşturulan türlerin (varsayılan olarak ./types/intlayer.d.ts) tsconfig.json dosyanıza dahil edildiğinden emin olun.
Kodu panoya kopyala
{ // ... Mevcut TypeScript yapılandırmalarınız include: [ // ... Mevcut TypeScript yapılandırmalarınız ".intlayer/**/*.ts", // Otomatik oluşturulan türleri dahil et ],}VS Code Uzantısı
Intlayer ile geliştirme deneyimini iyileştirmek için resmi Intlayer VS Code Uzantısı'nı yükleyebilirsiniz.
VS Code Marketplace'ten yükleyin
Bu uzantı şunları sağlar:
- Çeviri anahtarları için Otomatik tamamlama.
- Eksik çeviriler için Gerçek zamanlı hata algılama.
- Çevrilmiş içeriğin Satır içi önizlemeleri.
- Çevirileri kolayca oluşturmak ve güncellemek için Hızlı eylemler.
Uzantının nasıl kullanılacağı hakkında daha fazla detay için Intlayer VS Code Uzantısı dokümantasyonuna bakın.
Git Yapılandırması
Intlayer tarafından oluşturulan dosyaları yok saymanız önerilir. Bu, onları Git deposunuza commit etmenizi önler.
Bunu yapmak için .gitignore dosyanıza aşağıdaki talimatları ekleyebilirsiniz:
Kodu panoya kopyala
# Intlayer tarafından oluşturulan dosyaları yok say.intlayer