عبد النور محمد نشر 27 يونيو 2021 أرسل تقرير مشاركة نشر 27 يونيو 2021 مرحبا أحاول استيراد مكون دينامكيا عبر متغير path أوفره بهذه الطريقة import dynamic from 'next/dynamic' const Test = () => { const router = useRouter(); const { component } = router.query; const path = `../../components/${component.join('/')}`; const DynamicComponent = dynamic(() => import(path), { ssr: false, loading: () => <p>Loading...</p>, }); return ( <Fragment> <h1>Testing {path}</h1> <DynamicComponent /> </Fragment> ); }; لكن المكون لا يظهر ويبقى فقط loading ولا يتغير شئ 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 عبدالله عبدالرحمن11 نشر 27 يونيو 2021 أرسل تقرير مشاركة نشر 27 يونيو 2021 يجب عليك وضع dynamic خارج المكون ، وسيعمل بشكلٍ جيد const getDynamicComponent = (c) => dynamic(() => import(`../components/${c}`), { ssr: false, loading: () => <p>Loading...</p>, }); const Test = () => { const router = useRouter(); const { component } = router.query; const DynamicComponent = getDynamicComponent(component); return <DynamicComponent /> } اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 محمد أيت لعرايك نشر 28 يونيو 2021 أرسل تقرير مشاركة نشر 28 يونيو 2021 يتم إستعمال كلمة dynamic في nextjs على الشكل الموضح في المثال أسفله: في المثال التالي ، سيتم تحميل الوحدة ../components/hello ديناميكيًا بواسطة الصفحة import dynamic from 'next/dynamic' const DynamicComponent = dynamic(() => import('../components/hello')) function Home() { return ( <div> <Header /> <DynamicComponent /> <p>HOME PAGE is here!</p> </div> ) } export default Home سيكون DynamicComponent هو المكون الافتراضي الذي يتم إرجاعه بواسطة ../components/hello. إنه يعمل مثل مكون React العادي ، ويمكنك تمرير الدعائم إليه كما تفعل عادةً. يمكنك تطبيق نفس الطريقة في الشيفرة الخاصة بك. اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
عبد النور محمد
مرحبا أحاول استيراد مكون دينامكيا عبر متغير path أوفره بهذه الطريقة
لكن المكون لا يظهر ويبقى فقط loading ولا يتغير شئ
رابط هذا التعليق
شارك على الشبكات الإجتماعية
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.