
در این بخش، به دنیای برنامهنویسی، الگوریتمها، شبکه و زیرساختهای فناوری میپردازیم
تابع cacheLife در Next.js برای تعیین مدت زمان اعتبار کش یک کامپوننت یا تابع استفاده میشود. این تابع باید همراه با دستور use cache درون همان تابع یا کامپوننت فراخوانی شود. با استفاده از پروفایلهای آماده یا تنظیمات سفارشی، میتوان رفتار کش را برای دادههای لحظهای، روزانه، هفتگی یا پایدار کنترل کرد. این مقاله نحوهٔ استفاده از cacheLife، تفاوتهای stale، revalidate و expire، و مثالهایی از کاربردهای مختلف را توضیح میدهد.
تابع connection در Next.js به شما اجازه میدهد رندر کامپوننت را تا زمان دریافت درخواست واقعی کاربر به تعویق بیندازید. این قابلیت برای دادههایی مانند تاریخ یا عدد تصادفی مفید است که نباید در زمان build تولید شوند. همچنین API کوکیها در Next.js امکان خواندن کوکیها در Server Components و خواندن/نوشتن آنها در Server Actions و Route Handlers را فراهم میکند. این مقاله نحوه استفاده از هر دو قابلیت را با مثالهای کاربردی توضیح میدهد.
تابع draftMode در Next.js امکان فعالسازی یا غیرفعالسازی حالت پیشنویس را فراهم میکند و میتوان بررسی کرد که آیا این حالت فعال است یا نه. API fetch در Next.js با تنظیمات cache، revalidate و tags برای کنترل دقیق کش دادهها گسترش یافته است. همچنین تابع forbidden برای نمایش خطای 403 در صورت عدم مجوز دسترسی استفاده میشود. این مقاله نحوه استفاده از هر سه قابلیت را با مثالهای کاربردی توضیح میدهد.
Next.js ابزارهایی مانند generateImageMetadata، generateSitemaps و generateViewport را برای تولید داینامیک متادیتا فراهم میکند. این قابلیتها به شما اجازه میدهند آیکونها و تصاویر Open Graph را بهصورت برنامهنویسی تولید کنید، نقشههای سایت را بهصورت تقسیمشده بسازید، و تنظیمات نمای صفحه (viewport) را بر اساس پارامترهای مسیر یا شرایط محیطی سفارشیسازی کنید. این مقاله نحوه استفاده از این توابع را با مثالهای کاربردی توضیح میدهد.
تابع generateStaticParams در Next.js برای تولید مسیرهای داینامیک بهصورت استاتیک در زمان build استفاده میشود. این تابع جایگزین getStaticPaths در Pages Router است و به شما اجازه میدهد مسیرهایی مانند [slug] یا [id] را از قبل تولید کنید. همچنین میتوان مسیرهای چندگانه، catch-all، یا مسیرهای وابسته به والد را با این روش مدیریت کرد. این مقاله نحوه استفاده از generateStaticParams را با مثالهای مختلف توضیح میدهد
در نسخههای مدرن Next.js، مدیریت metadata صفحات بسیار قدرتمندتر و سادهتر شده است. metadata بهصورت خودکار در تگ <head> صفحات تزریق میشود و نقش مهمی در SEO، اشتراکگذاری اجتماعی و تجربه کاربری دارد. این مقاله دو روش اصلی تعریف metadata را بررسی میکند: استفاده از آبجکت ثابت metadata و تابع داینامیک generateMetadata.
Next.js ابزارهای قدرتمندی برای مدیریت درخواستها و پاسخها در کامپوننتهای سروری فراهم کرده است. تابع headers برای خواندن هدرهای HTTP ورودی، ImageResponse برای تولید تصاویر داینامیک، notFound برای نمایش صفحه خطای 404، و permanentRedirect برای ریدایرکت دائمی کاربران استفاده میشوند. این مقاله نحوه استفاده از هر یک را با مثالهای کاربردی توضیح میدهد.
Next.js با معرفی NextRequest و NextResponse، APIهای Request و Response مرورگر را گسترش داده و ابزارهای قدرتمندی برای مدیریت کوکیها، هدرها، ریدایرکتها، بازنویسی مسیرها و پاسخهای JSON فراهم کرده است. این مقاله نحوه استفاده از این ابزارها را با مثالهای کاربردی و نکات امنیتی توضیح میدهد.
تابع redirect در Next.js برای هدایت کاربر به مسیر جدید استفاده میشود و بسته به نوع استفاده، پاسخ HTTP با وضعیت 307 یا 303 ارسال میکند. این تابع در Server Components، Client Components، Route Handlers و Server Actions قابل استفاده است. تابع refresh نیز برای تازهسازی مسیر کلاینت از درون Server Action استفاده میشود. این مقاله نحوه استفاده از هر دو تابع را با مثالهای کاربردی و نکات مهم توضیح میدهد.
Next.js با معرفی قابلیتهای آزمایشی جدید، امکان کنترل دقیقتر دسترسی و کش دادهها را فراهم کرده است. تابع unauthorized برای مدیریت خطای 401 و هدایت کاربران به صفحه ورود، unstable_cache برای کش هوشمند عملیات سنگین، updateTag برای بازسازی آنی دادهها، و useLinkStatus برای نمایش وضعیت ناوبری استفاده میشوند. این مقاله نحوه استفاده از این ابزارها را با مثالهای کاربردی و نکات مهم بررسی میکند.
Next.js مجموعهای غنی از هوکهای کلاینت و ابزارهای کش و ناوبری را در اختیار توسعهدهندگان قرار میدهد. از خواندن پارامترهای مسیر تا گزارش Web Vitals و مدیریت کش، این مقاله مهمترین ابزارهای App Router را با مثالهای کاربردی معرفی میکند.
عملگرهای اسپرد و رست در جاوااسکریپت ابزارهایی قدرتمند برای مدیریت پراپسها و دادههای آبجکتی در React هستند. این مقاله نحوهٔ ارسال پراپسها با اسپرد، استخراج پراپرتیهای خاص با رست، و استفاده از destructuring برای نوشتن کامپوننتهای خوانا و قابل نگهداری را بررسی میکند.