Динамические роуты используют квадратные скобки: [id]/page.tsx матчит /product/123. Параметр приходит через params. [slug] — один сегмент, [...slug] — catch-all (несколько сегментов), [[...slug]] — optional catch-all (включая корень). В App Router params — это Promise, нужен await. generateStaticParams позволяет предгенерировать страницы для известных параметров на этапе билда. dynamicParams: false вернёт 404 для неизвестных параметров вместо SSR.
Как работают динамические роуты в Next.js?
Junior
299 просмотровAFK Offer AI
Что такое stacking context и как работает z-index?