"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > جهاز توجيه تطبيق Next.js: دليل شامل مع مثال واقعي

جهاز توجيه تطبيق Next.js: دليل شامل مع مثال واقعي

تم النشر بتاريخ 2024-11-01
تصفح:631

Next.js App Router: A Comprehensive Guide with Real-World Example

أحدثت Next.js ثورة في تطوير React بميزاتها القوية وتصميمها البديهي. مع إصدار Next.js 13، احتل جهاز توجيه التطبيقات الجديد مركز الصدارة، حيث يوفر للمطورين طريقة أكثر مرونة وقوة لتنظيم تطبيقاتهم. في هذا الدليل الشامل، سنتعمق في جهاز توجيه التطبيقات، ونستكشف ميزاته وأفضل ممارساته. لتوضيح هذه المفاهيم، سنستخدم مثالًا واقعيًا: مشروع إنشاء خطاب تعريفي.

فهم جهاز توجيه التطبيق

يمثل جهاز توجيه التطبيقات في Next.js 13 نقلة نوعية في كيفية تعاملنا مع التوجيه في تطبيقات React. على عكس جهاز توجيه الصفحات السابق، يستخدم جهاز توجيه التطبيقات نهجًا يعتمد على نظام الملفات والذي يتوافق بشكل أوثق مع كيفية تصميم بنية التطبيق لدينا عقليًا.

الفوائد الرئيسية لجهاز توجيه التطبيق:

  1. توجيه بديهي قائم على الملفات: يتم تحديد المسارات من خلال بنية الملف في دليل التطبيق الخاص بك.
  2. تحسين الأداء: دعم مدمج لمكونات React Server.
  3. مرونة محسنة: تنفيذ أسهل للتخطيطات، والتوجيه المتداخل، والمزيد.
  4. التحسينات المضمنة: تقسيم التعليمات البرمجية تلقائيًا والجلب المسبق.

البدء باستخدام جهاز توجيه التطبيقات

لنبدأ بإعداد مشروع Next.js 13 جديد باستخدام جهاز توجيه التطبيقات. افتح المحطة الطرفية الخاصة بك وقم بتشغيل:

npx create-next-app@latest my-app
cd my-app

عندما يُطلب منك ذلك، تأكد من تحديد "نعم" لـ "هل ترغب في استخدام جهاز توجيه التطبيقات؟".

التوجيه الأساسي باستخدام جهاز توجيه التطبيقات

في جهاز توجيه التطبيقات، يمثل كل مجلد مقطع مسار. لنقم بإنشاء هيكل بسيط لمولد الرسائل التعريفية الخاص بنا:

app/
├── page.tsx
├── layout.tsx
├── cover-letter/
│   └── page.tsx
└── templates/
    └── page.tsx

هنا، يمثل page.tsx في مجلد التطبيق الجذر الصفحة الرئيسية. تقوم مجلدات رسائل الغلاف والقوالب بإنشاء مسارات لتلك الصفحات المعنية.

في التطبيق/page.tsx:

export default function Home() {
  return 

Welcome to the Cover Letter Generator

; }

في التطبيق/رسالة الغلاف/page.tsx:

export default function CoverLetter() {
  return 

Create Your Cover Letter

; }

باستخدام هذا الهيكل، يمكنك الانتقال إلى / للصفحة الرئيسية و / رسالة الغلاف لصفحة إنشاء خطاب الغلاف.

التخطيطات والطرق المتداخلة

إحدى الميزات القوية لجهاز توجيه التطبيقات هي القدرة على إنشاء تخطيطات متداخلة. دعونا نضيف تخطيطًا مشتركًا لتطبيقنا.

في التطبيق/layout.tsx:

export default function RootLayout({
  children,
}: {
  children: React.ReactNode
}) {
  return (
    
      
        
        {children}
      
    
  );
}

سيتم تطبيق هذا التخطيط على جميع الصفحات في تطبيقنا، مما يوفر بنية تنقل متسقة.

الطرق الديناميكية

تعد المسارات الديناميكية ضرورية للتطبيقات التي تنشئ محتوى بناءً على المعلمات. دعونا ننفذ مسارًا ديناميكيًا لعرض قوالب رسائل الغلاف المحددة.

إنشاء ملف جديد: app/templates/[id]/page.tsx:

export default function Template({ params }: { params: { id: string } }) {
  return 

Template {params.id}

; }

الآن، سيؤدي الانتقال إلى /templates/1 أو /templates/formal إلى عرض هذا المكون بالمعرف المعني.

مكونات الخادم وجلب البيانات

يقدم Next.js 13 مكونات React Server، مما يسمح لنا بجلب البيانات على الخادم. دعونا ننفذ هذا في منشئ الرسائل التعريفية الخاص بنا.

في التطبيق/رسالة الغلاف/page.tsx:

async function getTemplates() {
  // Simulate API call
  return [
    { id: 1, name: 'Professional' },
    { id: 2, name: 'Creative' },
    { id: 3, name: 'Academic' },
  ];
}

export default async function CoverLetter() {
  const templates = await getTemplates();

  return (
    

Create Your Cover Letter

    {templates.map(template => (
  • {template.name}
  • ))}
); }

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

الربط والملاحة

للتنقل من جانب العميل، استخدم مكون الارتباط من Next.js. قم بتحديث تطبيقك/layout.tsx:

import Link from 'next/link';

export default function RootLayout({
  children,
}: {
  children: React.ReactNode
}) {
  return (
    
      
        
        {children}
      
    
  );
}

تطبيق في العالم الحقيقي: مولد خطاب الغلاف

الآن بعد أن قمنا بتغطية الأساسيات، دعونا نلقي نظرة على كيفية تطبيق هذه المفاهيم في مشروع في العالم الحقيقي. يعد مشروع Resumate-NextJS على GitHub مثالًا ممتازًا لمولد خطاب الغلاف المبني باستخدام Next.js.

الوجبات الرئيسية من هذا المشروع:

  1. التوجيه المنظم : يستخدم المشروع بنية توجيه واضحة، ويفصل بين الاهتمامات بين الصفحات والمكونات المختلفة.

  2. العرض من جانب الخادم : يستخدم إمكانات SSR الخاصة بـ Next.js لتحسين الأداء وتحسين محركات البحث.

  3. مسارات واجهة برمجة التطبيقات : تنفذ مسارات واجهة برمجة التطبيقات للمنطق من جانب الخادم، مما يوضح كيفية التعامل مع عمليات إرسال النماذج ومعالجة البيانات.

  4. التصميم : يستخدم Tailwind CSS لتصميم واجهة مستخدم سريع الاستجابة ونظيف.

  5. إدارة الحالة : تنفذ واجهة برمجة تطبيقات السياق لإدارة حالة التطبيق عبر المكونات.

المفاهيم المتقدمة

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

  1. المسارات الموازية: عرض صفحات متعددة بنفس التخطيط.
  2. اعتراض المسارات: تخصيص سلوك التوجيه لسيناريوهات محددة.
  3. معالجات الطريق: إنشاء نقاط نهاية واجهة برمجة التطبيقات داخل بنية جهاز توجيه التطبيق.
  4. البرامج الوسيطة: أضف منطقًا مخصصًا من جانب الخادم إلى مساراتك.

أفضل الممارسات والنصائح

  1. الاستفادة من مكونات الخادم: استخدمها لجلب البيانات والحسابات الثقيلة.
  2. تحسين الصور: استخدم مكون الصورة Next.js للتحسين التلقائي.
  3. تنفيذ التحسين التدريجي: تأكد من أن تطبيقك يعمل بدون JavaScript لتحسين إمكانية الوصول.
  4. استخدم TypeScript: لتحسين تجربة المطورين وجودة التعليمات البرمجية.
  5. تحديثات منتظمة: حافظ على تحديث إصدار Next.js للاستفادة من أحدث الميزات والتحسينات.

خاتمة

يمثل جهاز توجيه التطبيقات Next.js 13 خطوة مهمة للأمام في تطوير تطبيق React. من خلال توفير نظام توجيه بديهي يعتمد على نظام الملفات والاستفادة من قوة React Server Components، فإنه يمكّن المطورين من إنشاء تطبيقات ويب عالية الأداء وقابلة للتطوير وقابلة للصيانة.

كما هو موضح في مثال مولد خطاب الغلاف، يعمل جهاز توجيه التطبيقات على تبسيط عملية إنشاء تطبيقات ويب ديناميكية ومعقدة. سواء كنت تقوم بإنشاء موقع محفظة بسيط أو تطبيق ويب معقد، فإن إتقان جهاز توجيه التطبيقات سيعزز بشكل كبير تجربة تطوير Next.js الخاصة بك.

تذكر أن أفضل طريقة للتعلم هي بالممارسة. انسخ مستودع Resumate-NextJS، وقم بتجربة الكود، وحاول تنفيذ الميزات الخاصة بك باستخدام جهاز توجيه التطبيق. برمجة سعيدة!

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/priyansh0510/nextjs-13-app-router-a-comprehensive-guide-with-real-world-example-17dn?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ Study_golang @163.com حذف
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3