استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
تاريخ الإصدارات
- "بداية السجل"v5.5.10٢٩/٦/٢٠٢٥
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
التوثيق: دالة t في express-intlayer
تُعد دالة t في حزمة express-intlayer الأداة الأساسية لتوفير استجابات مترجمة في تطبيق Express الخاص بك. فهي تُبسّط التدويل (i18n) من خلال اختيار المحتوى ديناميكيًا بناءً على اللغة المفضلة للمستخدم.
نظرة عامة
تُستخدم دالة t لتعريف واسترجاع الترجمات لمجموعة معينة من اللغات. حيث تحدد تلقائيًا اللغة المناسبة للإرجاع بناءً على إعدادات طلب العميل، مثل رأس Accept-Language. وإذا لم تكن اللغة المفضلة متاحة، فإنها تعود بسلاسة إلى اللغة الافتراضية المحددة في تكوينك.
الميزات الرئيسية
- التوطين الديناميكي: تختار تلقائيًا الترجمة الأنسب للعميل.
- الرجوع إلى اللغة الافتراضية: يعود إلى اللغة الافتراضية إذا لم تكن اللغة المفضلة للعميل متاحة، مما يضمن استمرارية تجربة المستخدم.
- خفيف وسريع: مصمم للتطبيقات عالية الأداء، مما يضمن الحد الأدنى من التحميل.
- دعم الوضع الصارم: فرض الالتزام الصارم باللغات المعلنة لسلوك موثوق.
توقيع الدالة
المعاملات
translations: كائن حيث تكون المفاتيح هي رموز اللغات (مثلen،fr،es-MX) والقيم هي النصوص المترجمة المقابلة.
القيمة المرجعة
- نص يمثل المحتوى باللغة المفضلة للعميل.
تحميل معالج طلبات التدويل
لضمان عمل وظيفة التدويل التي يوفرها express-intlayer بشكل صحيح، يجب عليك تحميل وسيط التدويل في بداية تطبيق Express الخاص بك. هذا يتيح وظيفة t ويضمن التعامل الصحيح مع اكتشاف اللغة والترجمة.
ضع وسيط app.use(intlayer()) قبل أي مسارات في تطبيقك لضمان استفادة جميع المسارات من التدويل:
لماذا هذا مطلوب
- كشف اللغة: يقوم وسيط
intlayerبمعالجة الطلبات الواردة لاكتشاف اللغة المفضلة للمستخدم بناءً على الرؤوس، ملفات تعريف الارتباط، أو طرق التكوين الأخرى. - سياق الترجمة: يقوم بإعداد السياق اللازم لوظيفة
tللعمل بشكل صحيح، مما يضمن أن الترجمات تُعاد باللغة الصحيحة. - منع الأخطاء: بدون هذا الوسيط، استخدام وظيفة
tسيؤدي إلى أخطاء وقت التشغيل لأن معلومات اللغة اللازمة لن تكون متاحة.
أمثلة الاستخدام
مثال أساسي
قدم محتوى محليًا بلغات مختلفة:
طلبات العميل:
- العميل الذي لديه
Accept-Language: frسيستلمBienvenue!. - سيستلم العميل الذي يملك
Accept-Language: esالرسالة¡Bienvenido!. - سيستلم العميل الذي يملك
Accept-Language: deالرسالةWelcome!(اللغة الافتراضية).
التعامل مع الأخطاء
توفير رسائل الخطأ بعدة لغات:
استخدام المتغيرات المحلية
حدد الترجمات للمتغيرات الخاصة بالمحلية:
مواضيع متقدمة
آلية التراجع
إذا لم يكن الموقع المفضل متاحًا، فإن دالة t ستتراجع إلى الموقع الافتراضي المحدد في الإعدادات:
على سبيل المثال:
- إذا كانت
defaultLocaleهيLocales.CHINESEوطلب العميلLocales.DUTCH، فسيتم إرجاع الترجمة الافتراضية لقيمةLocales.CHINESE. - إذا لم يتم تعريف
defaultLocale، فستعود دالةtإلى قيمةLocales.ENGLISH.
فرض وضع الصرامة
قم بتكوين دالة t لفرض الالتزام الصارم باللغات المعلنة:
افتح الجدول في نافذة منبثقة لعرض جميع محتويات البيانات بوضوح
| الوضع | السلوك |
|---|---|
strict | يجب توفير ترجمات لجميع اللغات المعلنة. اللغات المفقودة ستؤدي إلى رمي أخطاء. |
inclusive | يجب أن تحتوي اللغات المعلنة على ترجمات. اللغات المفقودة تؤدي إلى تحذيرات ولكن يتم قبولها. |
loose | يتم قبول أي لغة موجودة، حتى لو لم يتم الإعلان عنها. |
مثال على التكوين:
تكامل TypeScript
دالة t آمنة من حيث النوع عند استخدامها مع TypeScript. عرّف كائن ترجمات آمن من حيث النوع:
الأخطاء الشائعة واستكشاف الأخطاء وإصلاحها
افتح الجدول في نافذة منبثقة لعرض جميع محتويات البيانات بوضوح
| المشكلة | السبب | الحل |
|---|---|---|
دالة t لا تعمل | لم يتم تحميل الوسيط (middleware) | تأكد من إضافة app.use(intlayer()) قبل تعريف المسارات. |
| خطأ في نقص الترجمات | تم تفعيل الوضع الصارم بدون جميع اللغات | قم بتوفير جميع الترجمات المطلوبة. |
نصائح للاستخدام الفعال
- مركزة الترجمات: استخدم وحدة مركزية أو ملفات JSON لإدارة الترجمات لتحسين سهولة الصيانة.
- التحقق من الترجمات: تأكد من أن كل نسخة لغوية لها ترجمة مقابلة لمنع الرجوع غير الضروري.
- الدمج مع التدويل في الواجهة الأمامية: قم بمزامنة التدويل في الواجهة الأمامية لتوفير تجربة مستخدم سلسة عبر التطبيق.
- قياس الأداء: اختبر أوقات استجابة تطبيقك عند إضافة الترجمات لضمان تأثير ضئيل.
الخاتمة
تُعد دالة t أداة قوية للتدويل في جانب الخادم. باستخدامها بشكل فعال، يمكنك إنشاء تطبيق أكثر شمولية وسهل الاستخدام لجمهور عالمي. للاستخدام المتقدم وخيارات التكوين التفصيلية، يرجى الرجوع إلى التوثيق.