استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
بدءاً من الدمج مع خادم MCP Intlayer ، يمكن لمساعدك الذكي الاسترجاع من جميع المستندات مباشرة من ChatGPT ، DeepSeek ، Cursor ، VSCode ، إلخ.
عرض الوثائق الخاصة بالخادم MCPتمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
تكامل React: توثيق هوك useDictionary
يوفر هذا القسم إرشادات مفصلة حول استخدام هوك useDictionary داخل تطبيقات React، مما يتيح التعامل الفعال مع المحتوى المحلي دون الحاجة إلى محرر بصري.
استيراد useDictionary في React
يمكن دمج هوك useDictionary في تطبيقات React عن طريق استيراده بناءً على السياق:
مكون العميل:
typescriptنسخ الكودنسخ الكود إلى الحافظة
import { useDictionary } from "next-intlayer"; // يستخدم في مكونات React على جانب العميل
مكون الخادم:
typescriptنسخ الكودنسخ الكود إلى الحافظة
import { useDictionary } from "next-intlayer/server"; // يستخدم في مكونات React على جانب الخادم
المعاملات
تقبل الدالة (الهوك) معاملين:
- dictionary: كائن قاموس معلن يحتوي على محتوى مترجم لمفاتيح محددة.
- locale (اختياري): اللغة المطلوبة. يتم الافتراض أنها لغة السياق الحالي إذا لم يتم تحديدها.
القاموس
يجب إعلان جميع كائنات القاموس في ملفات محتوى منظمة لضمان سلامة النوع ومنع أخطاء وقت التشغيل. يمكنك العثور على تعليمات الإعداد هنا. إليك مثال على إعلان المحتوى:
نسخ الكود إلى الحافظة
import { t, type Dictionary } from "intlayer";const exampleContent = { key: "component-example", content: { title: t({ en: "Client Component Example", fr: "Exemple de composant client", es: "Ejemplo de componente cliente", }), content: t({ en: "This is the content of a client component example", fr: "Ceci est le contenu d'un exemple de composant client", es: "Este es el contenido de un ejemplo de componente cliente", }), },} satisfies Dictionary;export default exampleContent;
مثال على الاستخدام في مكون عميل React
فيما يلي مثال على كيفية استخدام الخطاف useDictionary في مكون React:
نسخ الكود إلى الحافظة
"use client";import type { FC } from "react";import { useDictionary } from "next-intlayer";import clientComponentExampleContent from "./component.content";const ClientComponentExample: FC = () => { const { title, content } = useDictionary(clientComponentExampleContent); return ( <div> <h1>{title}</h1> <p>{content}</p> </div> );};
مثال على الاستخدام في مكون خادم React
إذا كنت تستخدم الخطاف useDictionary خارج IntlayerServerProvider، يجب توفير اللغة صراحة كمعامل عند عرض المكون:
نسخ الكود إلى الحافظة
import type { FC } from "react";import { useDictionary } from "next-intlayer/server";import clientComponentExampleContent from "./component.content";const ServerComponentExample: FC = () => { const { content } = useDictionary(clientComponentExampleContent); return ( <div> <h1>{content.title}</h1> <p>{content.content}</p> </div> );};
ملاحظات حول السمات
على عكس التكاملات التي تستخدم المحررات المرئية، لا تنطبق السمات مثل buttonTitle.value هنا. بدلاً من ذلك، قم بالوصول مباشرة إلى السلاسل المحلية كما هو معلن في المحتوى الخاص بك.
نسخ الكود إلى الحافظة
<button title={content.title}>{content.content}</button>
نصائح إضافية
- سلامة النوع: استخدم دائمًا Dictionary لتعريف القواميس الخاصة بك لضمان سلامة النوع.
- تحديثات الترجمة: عند تحديث المحتوى، تأكد من اتساق جميع اللغات لتجنب فقدان الترجمات.
تركز هذه الوثائق على دمج الخطاف useDictionary، مما يوفر نهجًا مبسطًا لإدارة المحتوى المحلي دون الاعتماد على وظائف المحرر المرئي.
تاريخ الوثيقة
- 5.5.10 - 2025-06-29: بداية التاريخ