تلقي إشعارات حول الإصدارات القادمة من Intlayer
    إنشاء:2025-11-16آخر تحديث:2025-11-16

    التوثيق: دالة getPrefix في intlayer

    الوصف

    تقوم دالة getPrefix بتحديد بادئة URL للغة معينة بناءً على إعدادات وضع التوجيه. تقارن اللغة مع اللغة الافتراضية وتعيد كائن يحتوي على ثلاثة تنسيقات مختلفة للبادئة لتوفير مرونة في بناء عناوين URL.

    الميزات الرئيسية:

    • تأخذ اللغة كمعامل أول (مطلوب)
    • كائن options اختياري يحتوي على defaultLocale و mode
    • تعيد كائن يحتوي على خصائص prefix و localePrefix
    • تدعم جميع أوضاع التوجيه: prefix-no-default، prefix-all، no-prefix، و search-params
    • أداة خفيفة لتحديد متى يجب إضافة بادئات اللغة

    توقيع الدالة

    getPrefix(  locale: Locales,               // مطلوب  options?: {                    // اختياري    defaultLocale?: Locales;    mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params';  }): GetPrefixResulttype GetPrefixResult = {  prefix: string;   // مثال: 'fr/' أو ''  localePrefix?: Locale; // مثال: 'fr' أو undefined}

    المعاملات

    • locale: Locales

      • الوصف: اللغة التي سيتم توليد البادئة لها. إذا كانت القيمة خاطئة (undefined، null، سلسلة فارغة)، تُرجع الدالة سلسلة فارغة.
      • النوع: Locales
      • مطلوب: نعم
    • options?: object

      • الوصف: كائن التهيئة لتحديد البادئة.
      • النوع: object
      • مطلوب: لا (اختياري)

      • options.defaultLocale?: Locales

        • الوصف: اللغة الافتراضية للتطبيق. إذا لم يتم توفيرها، يتم استخدام اللغة الافتراضية المهيأة في تكوين المشروع الخاص بك.
        • النوع: Locales
        • الافتراضي: تكوين المشروع
      • options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'

        • الوصف: وضع توجيه URL لمعالجة اللغة. إذا لم يتم توفيره، يستخدم الوضع المهيأ في تكوين المشروع الخاص بك.
        • النوع: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'
        • الافتراضي: تكوين المشروع
        • الأوضاع:
          • prefix-no-default: يعيد سلاسل فارغة عندما تتطابق اللغة مع اللغة الافتراضية
          • prefix-all: يعيد بادئة لجميع اللغات بما في ذلك الافتراضية
          • no-prefix: يعيد سلاسل فارغة (لا توجد بادئة في عناوين URL)
          • search-params: يعيد سلاسل فارغة (اللغة في معلمات الاستعلام)

    Returns

    • النوع: GetPrefixResult
    • الوصف: كائن يحتوي على ثلاثة تنسيقات مختلفة للبادئة:
      • prefix: بادئة المسار مع شرطة مائلة في النهاية (مثال: 'fr/'، '')
      • localePrefix: معرف اللغة بدون شرطات مائلة (مثال: 'fr'، undefined)

    مثال على الاستخدام

    الاستخدام الأساسي

    import { getPrefix, Locales } from "intlayer";// تحقق من البادئة للغة الإنجليزيةgetPrefix(Locales.ENGLISH, {  defaultLocale: Locales.ENGLISH,  mode: "prefix-all",});// يعيد: { prefix: 'en/', localePrefix: 'en' }// تحقق من البادئة للغة الفرنسيةgetPrefix(Locales.FRENCH, {  defaultLocale: Locales.ENGLISH,  mode: "prefix-no-default",});// يعيد: { prefix: 'fr/', localePrefix: 'fr' }

    أوضاع التوجيه المختلفة

    import { getPrefix, Locales } from "intlayer";// prefix-all: يعيد البادئة دائمًاgetPrefix(Locales.ENGLISH, {  mode: "prefix-all",  defaultLocale: Locales.ENGLISH,});// يعيد: { prefix: '/en', localePrefix: 'en' }// prefix-no-default: لا يعيد بادئة عندما تتطابق اللغة مع الافتراضيةgetPrefix(Locales.ENGLISH, {  mode: "prefix-no-default",  defaultLocale: Locales.ENGLISH,});// يعيد: { prefix: '', localePrefix: undefined }// prefix-no-default: يعيد البادئة عندما تختلف اللغة عن اللغة الافتراضيةgetPrefix(Locales.FRENCH, {  mode: "prefix-no-default",  defaultLocale: Locales.ENGLISH,});// يعيد: { prefix: 'fr/', localePrefix: 'fr' }// no-prefix & search-params: لا يعيد البادئة أبدًاgetPrefix(Locales.ENGLISH, { mode: "no-prefix" });// يعيد: { prefix: '', localePrefix: undefined }getPrefix(Locales.ENGLISH, { mode: "search-params" });// يعيد: { prefix: '', localePrefix: undefined }

    مثال عملي

    import { getPrefix, Locales } from "intlayer";// بناء عناوين URL مع البادئة المناسبة للغة معينةconst locale = Locales.FRENCH;const { prefix, localePrefix } = getPrefix(locale, {  defaultLocale: Locales.ENGLISH,  mode: "prefix-no-default",});// استخدام البادئة لبناء المسارconst url1 = `/${prefix}about`.replace(/\/+/g, "/");// النتيجة: "/fr/about"// استخدام localePrefix لتحديد اللغةconsole.log(`Current locale: ${localePrefix}`);// المخرجات: "Current locale: fr"

    الدوال المرتبطة


    TypeScript

    type GetPrefixResult = {  prefix: string; // بادئة المسار مع الشرطة المائلة النهائية (مثلاً 'fr/' أو '')  localePrefix?: Locale; // معرف اللغة بدون شرطات مائلة (مثلاً 'fr' أو غير معرف)};function getPrefix(  locale: Locales,  options?: {    defaultLocale?: Locales;    mode?: "prefix-no-default" | "prefix-all" | "no-prefix" | "search-params";  }): GetPrefixResult;
    تلقي إشعارات حول الإصدارات القادمة من Intlayer