في عالم يفقد السيطرة 🌀 عالم البرمجة لك

borma logo
person

أي موقع محتاج يجيب بيانات من مكان معين عشان يعرضها لليوزر البيانات دي ممكن تكون من API او Database أو ملف JSON متخزن عندك… هنا بقا بييجي دور ال Data Fetching اللي هو ببساطة إزاي الموقع بتاعك يتعامل مع البيانات ويجيبها ويعرضها.

هنتكلم سوا دلوقتي عن الـ Data Fetching Methods الأساسية في Next.js…

1. الطريقه الاولي: getStaticProps

الطريقة دي هتستخدمها لو عايز تجيب البيانات وقت Build Time يعني قبل ما الموقع يتنشر.

إمتى تستخدمها؟

لما يكون عندك بيانات مش بتتغير كتير، زي صفحة منتجات أو مقالة ثابتة.

مثال عملي عشان يوضحلك الدنيا:
زر نسخ الكود

الصفحة دي هتتعمل مرة واحدة أثناء الـ Build.

2. الطريقه الثانيه: getServerSideProps

الطريقة دي بتشتغل كل مرة المستخدم يفتح فيها الصفحة وبترجع دايما بيانات متحدثة لكنا أبطأ شوية

إمتى تستخدمها؟

لما يكون عندك بيانات بتتغير بسرعة أو محتاجة Authentication زي Dashboard أو صفحة Profile.

مثال عملي عشان يوضحلك الدنيا:

زر نسخ الكود

كل طلب جديد هيعمل Fetch للبيانات في الوقت نفسه.

3. الطريقه الثالثه: Incremental Static Regeneration (ISR) 

دي بقا مزيج بين الطريقتين اللي فاتوا تقدر تعمل صفحات ثابتة والبيانات تتحدث بشكل تلقائي كل فترة عادي

إمتى تستخدمها؟

لما تكون عايز تستفيد من سرعة الصفحات الثابتة مع تحديث البيانات باستمرار، زي مواقع الأخبار أو المنتجات.

مثال عملي عشان يوضحلك الدنيا:

زر نسخ الكود

هنا الصفحة هتتحدث كل 60 ثانية لو في بيانات جديدة.

وبكده نكون خلصنا شرحنا عن الData Fetching . لو عندك سؤال أو استفسار، اكتب في الكومنتات.

قسم التعليقات