استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
تاريخ الإصدارات
- "الوثائق الأولية"v9.0.022/6/2026
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
الوثائق: دالة comparePaths في intlayer
الوصف
تقوم دالة comparePaths بمقارنة عنواني URL أو مسارين للتحقق من تطابقهما مع تجاهل جزء اللغة (locale)، البروتوكول/المضيف، سلسلة الاستعلام (query string)، التجزئة (hash)، والشرطات المائلة الختامية (trailing slashes). إنها الطريقة الموصى بها لتحديد ما إذا كان رابط التنقل يشير إلى الصفحة الحالية — على سبيل المثال لتمييز الرابط النشط — دون الحاجة إلى كتابة منطق التسوية (normalization logic) الخاص بك والذي يكون عرضة للأخطاء.
داخليًا، تعيد استخدام getPathWithoutLocale لإزالة جزء اللغة، لذلك فهي تحترم وضع التوجيه واللغات التي قمت بتكوينها.
تُصدّر الحزمة أيضًا الأداة المساعدة الأساسية normalizePath، والتي تُرجع المسار القياسي المستقل عن اللغة والمُستخدم في المقارنة.
الميزات الرئيسية:
- مقارنة مستقلة عن اللغة (
/ar/aboutيتطابق مع/about) - تعمل مع كل من عناوين URL المطلقة والمسارات النسبية
- تتجاهل سلسلة الاستعلام، التجزئة، والشرطات المائلة الختامية
- تتسامح مع غياب الشرطات المائلة البادئة والقيم الفارغة (يتم تسويتها إلى
/) - خفيفة الوزن — مبنية على
getPathWithoutLocale
توقيع الدالة
نسخ الكود إلى الحافظة
المعلمات (Parameters)
pathname: string- الوصف: سلسلة URL الأولى أو المسار الأول للمقارنة (عادةً ما يكون المسار الحالي).
- النوع:
string - مطلوب: نعم
href: string- الوصف: سلسلة URL الثانية أو المسار الثاني للمقارنة (عادةً ما يكون
hrefلرابط التنقل). - النوع:
string - مطلوب: نعم
- الوصف: سلسلة URL الثانية أو المسار الثاني للمقارنة (عادةً ما يكون
locales: Locales[]- الوصف: مصفوفة اختيارية للغات المدعومة. يتم افتراض اللغات المكوّنة في المشروع.
- النوع:
Locales[] - مطلوب: لا (اختياري)
الإرجاع (Returns)
- النوع:
boolean - الوصف:
trueعندما يتم حل كلا الإدخالين إلى نفس المسار المستقل عن اللغة، وإلاfalse.
مثال على الاستخدام
الاستخدام الأساسي
نسخ الكود إلى الحافظة
import { comparePaths } from "intlayer";
comparePaths("/ru/path", "/path"); // true
comparePaths("/ru/path/", "/path"); // true
comparePaths("/ru/path", "/path/"); // true
comparePaths("/ru/", "/"); // true
comparePaths("/ru", "/"); // true
comparePaths("ru/path", "/path"); // true
comparePaths("", "/"); // true
comparePaths("/ru", ""); // true
comparePaths("/ru/path", "/other"); // false
عناوين URL المطلقة والنسبية
نسخ الكود إلى الحافظة
تمييز رابط التنقل النشط
نسخ الكود إلى الحافظة
normalizePath
تقوم normalizePath بإرجاع المسار القياسي والمستقل عن اللغة الذي تستخدمه comparePaths. تقوم بإزالة جزء اللغة، البروتوكول/المضيف، سلسلة الاستعلام، والتجزئة، وتضمن وجود شرطة مائلة بادئة واحدة، وتزيل أي شرطات مائلة ختامية (باستثناء الجذر)، وتستخدم / كقيمة احتياطية للقيم الفارغة.
نسخ الكود إلى الحافظة
import { normalizePath } from "intlayer";
normalizePath("/ru/path"); // "/path"
normalizePath("/ru/path/"); // "/path"
normalizePath("ru/path"); // "/path"
normalizePath("/ru/"); // "/"
normalizePath("/ru"); // "/"
normalizePath(""); // "/"
normalizePath("https://example.com/ru/path"); // "/path"
دوال ذات صلة
getPathWithoutLocale: يزيل جزء اللغة من عنوان URL أو مسار.getPrefix: يحدد بادئة URL للغة معينة.getLocalizedUrl: يولد عنوان URL محلي للغة معينة.
TypeScript
نسخ الكود إلى الحافظة