تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةالمحتوى الشرطي / الشرط في Intlayer
كيف يعمل الشرط
في Intlayer، يتم تحقيق المحتوى الشرطي من خلال وظيفة cond، التي تربط شروطًا محددة (عادةً قيم منطقية) بالمحتوى المقابل لها. يتيح لك هذا النهج اختيار المحتوى ديناميكيًا بناءً على شرط معين. عند دمجه مع React Intlayer أو Next Intlayer، يتم اختيار المحتوى المناسب تلقائيًا وفقًا للشرط المقدم أثناء وقت التشغيل.
إعداد المحتوى الشرطي
لإعداد المحتوى الشرطي في مشروع Intlayer الخاص بك، قم بإنشاء وحدة محتوى تتضمن تعريفاتك الشرطية. فيما يلي أمثلة بتنسيقات مختلفة.
import { cond, type Dictionary } from "intlayer";const myConditionalContent = { key: "my_key", content: { myCondition: cond({ true: "المحتوى الخاص بي عندما يكون الشرط صحيحًا", false: "المحتوى الخاص بي عندما يكون الشرط خاطئًا", fallback: "المحتوى الخاص بي عندما يفشل الشرط", // اختياري }), },} satisfies Dictionary;export default myConditionalContent;
إذا لم يتم إعلان fallback، سيتم أخذ المفتاح الأخير المعلن كـ fallback إذا لم يتم التحقق من الشرط.
استخدام المحتوى الشرطي مع React Intlayer
لاستخدام المحتوى الشرطي داخل مكون React، قم باستيراد واستخدام الخطاف useIntlayer من حزمة react-intlayer. يقوم هذا الخطاف بجلب المحتوى للمفتاح المحدد ويسمح لك بتمرير شرط لاختيار الإخراج المناسب.
import type { FC } from "react";import { useIntlayer } from "react-intlayer";const ConditionalComponent: FC = () => { const { myCondition } = useIntlayer("my_key"); return ( <div> <p> { /* الإخراج: المحتوى الخاص بي عندما يكون الشرط صحيحًا */ myCondition(true) } </p> <p> { /* الإخراج: المحتوى الخاص بي عندما يكون الشرط خاطئًا */ myCondition(false) } </p> <p> { /* الإخراج: المحتوى الخاص بي عندما يفشل الشرط */ myCondition("") } </p> <p> { /* الإخراج: المحتوى الخاص بي عندما يفشل الشرط */ myCondition(undefined) } </p> </div> );};export default ConditionalComponent;
موارد إضافية
لمزيد من المعلومات التفصيلية حول الإعداد والاستخدام، راجع الموارد التالية:
تقدم هذه الموارد مزيدًا من الأفكار حول إعداد واستخدام Intlayer عبر بيئات وأطر عمل مختلفة.
إذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيق