استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
بدءاً من الدمج مع خادم MCP Intlayer ، يمكن لمساعدك الذكي الاسترجاع من جميع المستندات مباشرة من ChatGPT ، DeepSeek ، Cursor ، VSCode ، إلخ.
عرض الوثائق الخاصة بالخادم MCPتمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
express-intlayer: حزمة جافاسكريبت لتدويل تطبيق Express.js
Intlayer هي مجموعة من الحزم مصممة خصيصًا لمطوري جافاسكريبت. وهي متوافقة مع أُطُر العمل مثل React و Next.js و Express.js.
حزمة express-intlayer تتيح لك تدويل تطبيق Express.js الخاص بك. فهي توفر وسيطًا (middleware) لاكتشاف اللغة المفضلة للمستخدم، وتعيد القاموس المناسب للمستخدم.
لماذا تقوم بتدويل الواجهة الخلفية (Backend) الخاصة بك؟
تدويل الواجهة الخلفية أمر ضروري لخدمة جمهور عالمي بفعالية. فهو يسمح لتطبيقك بتقديم المحتوى والرسائل باللغة المفضلة لكل مستخدم. تعزز هذه القدرة تجربة المستخدم وتوسع نطاق تطبيقك بجعله أكثر وصولًا وملاءمة للأشخاص من خلفيات لغوية مختلفة.
حالات استخدام عملية
عرض أخطاء الواجهة الخلفية بلغة المستخدم: عند حدوث خطأ، فإن عرض الرسائل بلغة المستخدم الأم يحسن الفهم ويقلل من الإحباط. هذا مفيد بشكل خاص للرسائل الديناميكية التي قد تظهر في مكونات الواجهة الأمامية مثل الإشعارات المنبثقة أو النوافذ الحوارية.
استرجاع المحتوى متعدد اللغات: بالنسبة للتطبيقات التي تستخرج المحتوى من قاعدة بيانات، يضمن التدويل إمكانية تقديم هذا المحتوى بعدة لغات. هذا أمر حيوي للمنصات مثل مواقع التجارة الإلكترونية أو أنظمة إدارة المحتوى التي تحتاج إلى عرض أوصاف المنتجات والمقالات والمحتويات الأخرى باللغة التي يفضلها المستخدم.
إرسال رسائل بريد إلكتروني متعددة اللغات: سواء كانت رسائل بريد إلكتروني معاملاتية، حملات تسويقية، أو إشعارات، فإن إرسال الرسائل بلغة المستلم يمكن أن يزيد بشكل كبير من التفاعل والفعالية.
الإشعارات الفورية متعددة اللغات: بالنسبة لتطبيقات الهواتف المحمولة، يمكن أن يعزز إرسال الإشعارات الفورية بلغة المستخدم المفضلة التفاعل والاحتفاظ به. هذه اللمسة الشخصية تجعل الإشعارات تبدو أكثر صلة وقابلية للتنفيذ.
الاتصالات الأخرى: أي شكل من أشكال الاتصال من الخلفية، مثل رسائل SMS، تنبيهات النظام، أو تحديثات واجهة المستخدم، يستفيد من كونه بلغة المستخدم، مما يضمن الوضوح ويعزز تجربة المستخدم بشكل عام.
من خلال تدويل الخلفية، لا يحترم تطبيقك الاختلافات الثقافية فحسب، بل يتماشى أيضًا بشكل أفضل مع احتياجات السوق العالمية، مما يجعله خطوة أساسية في توسيع خدماتك على مستوى العالم.
لماذا تدمج Intlayer؟
- بيئة آمنة من حيث النوع: استفد من TypeScript لضمان أن جميع تعريفات المحتوى الخاصة بك دقيقة وخالية من الأخطاء.
التثبيت
قم بتثبيت الحزمة اللازمة باستخدام مدير الحزم المفضل لديك:
نسخ الكود إلى الحافظة
npm install express-intlayer
نسخ الكود إلى الحافظة
yarn add express-intlayer
نسخ الكود إلى الحافظة
pnpm add express-intlayer
تكوين Intlayer
يوفر Intlayer ملف تكوين لإعداد مشروعك. ضع هذا الملف في جذر مشروعك.
نسخ الكود إلى الحافظة
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { internationalization: { locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], defaultLocale: Locales.ENGLISH, },};export default config;
للحصول على قائمة كاملة بالمعلمات المتاحة، راجع توثيق التهيئة.
مثال على الاستخدام
قم بإعداد تطبيق Express الخاص بك لاستخدام express-intlayer:
نسخ الكود إلى الحافظة
import express, { type Express } from "express";import { intlayer, t } from "express-intlayer";const app: Express = express();// تحميل معالج طلبات التدويلapp.use(intlayer());// المساراتapp.get("/", (_req, res) => { res.send( t({ en: "Example of returned content in English", fr: "مثال على المحتوى المعاد بالفرنسية", "es-ES": "مثال على المحتوى المعاد بالإسبانية (إسبانيا)", "es-MX": "مثال على المحتوى المعاد بالإسبانية (المكسيك)", }) );});// بدء الخادمapp.listen(3000, () => console.log(`يتم الاستماع على المنفذ 3000`));
التوافق
express-intlayer متوافق تمامًا مع:
- react-intlayer لتطبيقات React
- next-intlayer لتطبيقات Next.js
- vite-intlayer لتطبيقات Vite
كما يعمل بسلاسة مع أي حل للتدويل عبر بيئات مختلفة، بما في ذلك المتصفحات وطلبات API. يمكنك تخصيص الوسيط لاكتشاف اللغة من خلال الرؤوس أو ملفات تعريف الارتباط:
نسخ الكود إلى الحافظة
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { // ... خيارات تكوين أخرى middleware: { headerName: "my-locale-header", // اسم رأس اللغة cookieName: "my-locale-cookie", // اسم ملف تعريف الارتباط للغة },};export default config;
بشكل افتراضي، سيقوم express-intlayer بتفسير رأس Accept-Language لتحديد اللغة المفضلة للعميل.
الوظائف المقدمة من حزمة express-intlayer
تاريخ الوثائق
- 5.5.10 - 2025-06-29: بداية التاريخ