عبد النور محمد نشر 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 اقتباس
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 /> } اقتباس
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 العادي ، ويمكنك تمرير الدعائم إليه كما تفعل عادةً. يمكنك تطبيق نفس الطريقة في الشيفرة الخاصة بك. اقتباس
السؤال
عبد النور محمد
مرحبا أحاول استيراد مكون دينامكيا عبر متغير path أوفره بهذه الطريقة
لكن المكون لا يظهر ويبقى فقط loading ولا يتغير شئ
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.