All tips

إزاي صفحة Next توصل فورا وجواها بيانات خاصة بالمستخدم؟

mostafa mohamed abdalla Mentor Senior Frontend Engineer ·

إزاي صفحة Next توصل فورا وجواها بيانات خاصة بالمستخدم؟

زمان كان قدامك اختيارين: صفحة Static سريعة بس مفيهاش حاجة تخص المستخدم، أو صفحة Dynamic فيها كل حاجة بس بتستنى السيرفر.

الـ Partial Prerendering بتدّيك الاتنين في صفحة واحدة.

وقت الـ Build، Next بتعدّي على شجرة الـ Components وتقرر مصير كل حتة:
\

  • حاجة متخزنة بـ use cache، أو حاجة ثابتة (imports، قراءة ملف محلي، حسابات بحتة): بتدخل الـ Static Shell.\
  • حاجة جوه Suspense: الـ Fallback بس هو اللي بيدخل الـ Shell، والمحتوى الحقيقي بييجي وقت الطلب.

    الـ Shell ده HTML بيتخدم من الـ CDN مباشرة، ومعاه RSC Payload للتنقل جوه الموقع. يعني أول محتوى بيوصل من غير ما السيرفر الأصلي يتحرك.

    والتفصيلة اللي بتفرق: كل ما كانت الحاجة اللي بتستنى الـ Request أعمق في الشجرة، كل ما الـ Shell بتاعك أكبر.

    مثال: لو الـ Layout قرا الـ params في أول سطر، الـ Layout كله بقى بيستنى الـ Request ومش هيدخل الـ Shell. لو نقلت القراءة جوه Component صغير ملفوف في Suspense، الباقي كله بيدخل الـ Shell.

    ولو الـ params مجهولة وقت الـ Build، بيطلع App Shell مشترك، وبعد أول زيارة بيتحدث للنسخة الكاملة (ISR).

    سؤال: Component بتاعك بيقرا الـ Request فين في الشجرة؟
Helpful Comment

Discussion

No comments yet

Ask the mentor about this tip, or add what worked for you. The mentor is notified of every comment.

Join the discussion Sign in to ask a question or reply to other students.
Sign in
No questions yet

No comments yet. Tried this advice? Say how it went.