اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

إن هذا ليس خطأ و إنما مجرد تحذير، حيث يجب على التطبيق أن يعمل بالرغم من وجوده.

يقول لك هذا التحذير بأنك تستعمل ReactDOM.render لعرض المكونات و هذه الطريقة قد تم التخلي عنها في النسخة الجديدة من react، أي يبدو أنك تتبع كورس يعتمد على النسخة الأقدم و هي react 17، لا مشكلة فهنا سيقوم التطبيق تلقائياً بالتصرف و كأنه مبني بال react 17 .

يمكنك استعمال createRoot بدلاً من ذلك كي يصبح الكود متوافقاً مع react 18.

قبل كنا نكتب مثلاً:

import { render } from 'react-dom';
const container = document.getElementById('app');
render(<App tab="home" />, container);

الآن ليصبح الكود متوافقاً مع  react 18 نكتب ما يلي:

import { createRoot } from 'react-dom/client';
const container = document.getElementById('app');
const root = createRoot(container); 
root.render(<App tab="home" />);

لاحظ أننا نجلب ال container ثم نضعها على أنها root ثم نقوم بعمل render.

يمكنك الاطلاع على الاختلافات بشكل كامل و كيفية الانتقال إلى النسخة react 18 من هنا.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...