createRoot
تمكنك createRoot من إنشاء نقطة بداية (Root) لعرض مكونات React داخل عنصر DOM في المتصفح.
const root = createRoot(domNode, options?)المرجع
createRoot(domNode, options?)
استدعِ createRoot لإنشاء نقطة بداية React لعرض المحتوى داخل عنصر DOM في المتصفح.
import { createRoot } from 'react-dom/client';
const domNode = document.getElementById('root');
const root = createRoot(domNode);سيقوم React بإنشاء نقطة بداية لـ domNode، ويتولى إدارة العنصر DOM داخله. بعد إنشاء نقطة البداية، يتعين عليك استدعاء root.render لعرض مكون React داخله:
root.render(<App />);يتم عادة إنشاء التطبيق بالكامل باستخدام React بنداء واحد فقط لـ createRoot لنقطة البداية. قد يحتوي الموقع الذي يستخدم React لأجزاء من الصفحة على عدد من نقاط البداية الفردية حسب الحاجة.
المعاملات
-
domNode: عنصر DOM يقوم React بإنشاء نقطة بداية لهذا العنصر ويتيح لك استدعاء الدوال على نقطة البداية مثلrenderلعرض المحتوى المعروض بواسطة React. -
optionsاختياري: كائن يحتوي على خيارات لنقطة بداية React هذه.onRecoverableErrorاختياري: استدعاء للتحكم عندما يقوم React بالتعافي تلقائيًا من الأخطاء.identifierPrefixاختياري: بادئة نصيّة يستخدمها React للمعرفات الفريدة التي تنشأ عن طريقuseId. مفيد لتجنب التعارض عند استخدام العديد من نقاط البداية في نفس الصفحة.
العائدات
يعيد createRoot كائنًا يحتوي على طريقتين: render و unmount.
ملاحظات
- إذا كان تطبيقك يتم عرضه من الخادم، فإن استخدام
createRoot()غير مدعوم. استخدمhydrateRoot()بدلاً من ذلك. - من المرجح أن لديك استدعاء واحد فقط لـ
createRootفي تطبيقك. إذا كنت تستخدم إطار عمل، فقد يقوم هذا الإطار الاستدعاء بالنيابة عنك. - عندما ترغب في عرض جزء من JSX في جزء آخر من شجرة DOM التي ليست طفلًا للمكون الخاص بك (على سبيل المثال، نافذة محادثة، أو توضيح Tooltip)، استخدم
createPortalبدلاً منcreateRoot.