Məzmuna keç
Development

Next.js 15-də App Router: nə dəyişdi və necə keçmək olar

Asinxron request API-ləri, yeni keşləmə qaydaları və React 19 dəstəyi — layihəni yeniləməzdən əvvəl bilməli olduqların.

HTMLLAB komandası · 8 dəq oxu

Next.js 15 App Router-in özünü dəyişmir, amma bir neçə vacib default davranışı yeniləyir. Bu dəyişikliklər köhnə layihəni yeniləyəndə ilk günlərdə xəta və gözlənilməz nəticələr yarada bilər. Gəlin ən vacib məqamlara baxaq.

Asinxron request API-ləri

Əvvəllər cookies(), headers(), həmçinin səhifənin params və searchParams dəyərləri sinxron oxunurdu. Next.js 15-də onlar Promise qaytarır, ona görə də await ilə oxunmalıdır.

app/video/[id]/page.tsx
type Props = { params: Promise<{ id: string }> };

export default async function Page({ params }: Props) {
  const { id } = await params;
  return <Video id={id} />;
}
Qeyd
Yeniləmə üçün rəsmi codemod var: npx @next/codemod@canary upgrade latest. O, kodun böyük hissəsini avtomatik dəyişir, amma nəticəni mütləq yoxla.

Keşləmə artıq default deyil

Next.js 14-də fetch sorğuları və GET route handler-lər default olaraq keşlənirdi. 15-ci versiyada bu dəyişib: keşləmə istəyirsənsə, onu açıq şəkildə göstərməlisən.

  • fetch sorğuları default olaraq keşlənmir
  • GET route handler-lər də default olaraq dinamikdir
  • Klient router keşi səhifə komponentlərini default saxlamır

React 19 və Turbopack

App Router artıq React 19 ilə işləyir. Development rejimində Turbopack stabil sayılır — next dev --turbo ilə böyük layihələrdə yenilənmə xeyli sürətli olur.

Nəticə

Yeniləmə çətin deyil, amma əvvəlcədən plan qurmaq vacibdir: codemod-u işə sal, asinxron API-ləri yoxla və harada keşləmə lazımdırsa, onu açıq yaz.

#nextjs#react#app-router

Bunları da oxu