Yazar:
    Oluşturma:2025-11-16Son güncelleme:2025-11-16

    Dokümantasyon: intlayer İçindeki getPrefix Fonksiyonu

    Açıklama

    getPrefix fonksiyonu, yönlendirme modu yapılandırmasına bağlı olarak verilen bir locale için URL ön ekini belirler. Locale'i varsayılan locale ile karşılaştırır ve esnek URL yapısı için üç farklı ön ek formatını içeren bir nesne döner.

    Temel Özellikler:

    • İlk parametre olarak bir locale alır (zorunlu)
    • defaultLocale ve mode içeren isteğe bağlı options nesnesi
    • prefix ve localePrefix özelliklerine sahip bir nesne döner
    • Tüm yönlendirme modlarını destekler: prefix-no-default, prefix-all, no-prefix ve search-params
    • Locale ön eklerinin ne zaman ekleneceğini belirlemek için hafif bir yardımcı araç

    Fonksiyon İmzası

    typescript
    getPrefix(  locale: Locales,               // Zorunlu  options?: {                    // İsteğe bağlı    defaultLocale?: Locales;    mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params';  }): GetPrefixResulttype GetPrefixResult = {  prefix: string;   // örn. 'fr/' veya ''  localePrefix?: Locale; // örn. 'fr' veya tanımsız}

    Parametreler

    • locale: Locales

      • Açıklama: Ön ek oluşturulacak locale. Değer falsy ise (undefined, null, boş string), fonksiyon boş string döner.
      • Tür: Locales
      • Zorunlu: Evet
    • options?: object

      • Açıklama: Ön ek belirleme için yapılandırma nesnesi.
      • Tür: object
      • Zorunlu: Hayır (İsteğe bağlı)

      • options.defaultLocale?: Locales

        • Açıklama: Uygulamanın varsayılan locale'i. Sağlanmazsa, proje yapılandırmanızdaki varsayılan locale kullanılır.
        • Tür: Locales
        • Varsayılan: Proje Yapılandırması
      • options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'

        • Açıklama: Locale işlemleri için URL yönlendirme modu. Sağlanmazsa, proje yapılandırmanızdaki yapılandırılmış modu kullanır.
        • Tür: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'
        • Varsayılan: Proje Yapılandırması
        • Modlar:
          • prefix-no-default: Locale varsayılan locale ile eşleştiğinde boş string döner
          • prefix-all: Varsayılan dahil tüm localeler için ön ek döner
          • no-prefix: Boş string döner (URL'lerde ön ek yok)
          • search-params: Boş string döner (locale sorgu parametrelerinde)

    Dönüş Değeri

    • Tür: GetPrefixResult
    • Açıklama: Üç farklı ön ek formatı içeren bir nesne:
      • prefix: Sonunda eğik çizgi olan yol ön eki (örneğin, 'fr/', '')
      • localePrefix: Eğik çizgisiz locale tanımlayıcısı (örneğin, 'fr', undefined)

    Örnek Kullanım

    Temel Kullanım

    typescript
    import { getPrefix, Locales } from "intlayer";
    
    // İngilizce locale için ön eki kontrol et
    getPrefix(Locales.ENGLISH, {
      defaultLocale: Locales.ENGLISH,
      mode: "prefix-all",
    });
    // Döner: { prefix: 'en/', localePrefix: 'en' }
    
    // Fransızca locale için ön eki kontrol et
    getPrefix(Locales.FRENCH, {
      defaultLocale: Locales.ENGLISH,
      mode: "prefix-no-default",
    });
    // Döner: { prefix: 'fr/', localePrefix: 'fr' }

    Farklı Yönlendirme Modları

    typescript
    import { getPrefix, Locales } from "intlayer";// prefix-all: Her zaman prefix dönergetPrefix(Locales.ENGLISH, {  mode: "prefix-all",  defaultLocale: Locales.ENGLISH,});// Döner: { prefix: '/en', localePrefix: 'en' }// prefix-no-default: Locale varsayılanla eşleştiğinde prefix yokgetPrefix(Locales.ENGLISH, {  mode: "prefix-no-default",  defaultLocale: Locales.ENGLISH,});// Döner: { prefix: '', localePrefix: undefined }// prefix-no-default: Locale varsayılanla farklıysa prefix dönergetPrefix(Locales.FRENCH, {  mode: "prefix-no-default",  defaultLocale: Locales.ENGLISH,});// Döner: { prefix: 'fr/', localePrefix: 'fr' }// no-prefix & search-params: Hiçbir zaman prefix döndürmezgetPrefix(Locales.ENGLISH, { mode: "no-prefix" });// Döner: { prefix: '', localePrefix: undefined }getPrefix(Locales.ENGLISH, { mode: "search-params" });// Döner: { prefix: '', localePrefix: undefined }

    Pratik Örnek

    typescript
    import { getPrefix, Locales } from "intlayer";// Belirli bir locale için uygun prefix ile URL'ler oluşturconst locale = Locales.FRENCH;const { prefix, localePrefix } = getPrefix(locale, {  defaultLocale: Locales.ENGLISH,  mode: "prefix-no-default",});// Yol oluşturmak için prefix kullanımıconst url1 = `/${prefix}about`.replace(/\/+/g, "/");// Sonuç: "/fr/about"// Locale tanımlaması için localePrefix kullanımıconsole.log(`Mevcut locale: ${localePrefix}`);// Çıktı: "Mevcut locale: fr"

    İlgili Fonksiyonlar


    TypeScript

    typescript
    type GetPrefixResult = {  prefix: string; // Sonunda eğik çizgi olan yol öneki (örneğin, 'fr/' veya '')  localePrefix?: Locale; // Eğik çizgi olmadan locale tanımlayıcısı (örneğin, 'fr' veya tanımsız)};function getPrefix(  locale: Locales,  options?: {    defaultLocale?: Locales;    mode?: "prefix-no-default" | "prefix-all" | "no-prefix" | "search-params";  }): GetPrefixResult;