default.js
Файл default.js
используется для отображения резервного контента в параллельных маршрутах (Parallel Routes), когда Next.js не может восстановить активное состояние слота (slot) после полной загрузки страницы.
При мягкой навигации (soft navigation) Next.js отслеживает активное состояние (подстраницу) для каждого слота. Однако при жесткой навигации (полная загрузка страницы) Next.js не может восстановить активное состояние. В этом случае для подстраниц, не соответствующих текущему URL, может быть отображен файл default.js
.
Рассмотрим следующую структуру папок. Слот @team
содержит страницу settings
, а @analytics
— нет.

При переходе на /settings
слот @team
отобразит страницу settings
, сохраняя текущую активную страницу для слота @analytics
.
При обновлении страницы Next.js отобразит default.js
для @analytics
. Если default.js
не существует, вместо него будет отображена ошибка 404
.
Кроме того, поскольку children
является неявным слотом, вам также необходимо создать файл default.js
для отображения резервного контента для children
, когда Next.js не может восстановить активное состояние родительской страницы.
Справочник
params
(опционально)
Промис, который разрешается в объект, содержащий параметры динамического маршрута (dynamic route parameters) от корневого сегмента до подстраниц слота. Например:
Пример | URL | params |
---|---|---|
app/[artist]/@sidebar/default.js | /zack | Promise<{ artist: 'zack' }> |
app/[artist]/[album]/@sidebar/default.js | /zack/next | Promise<{ artist: 'zack', album: 'next' }> |
- Поскольку пропс
params
является промисом, для доступа к значениям необходимо использоватьasync/await
или функциюuse
из React.- В версии 14 и ранее
params
был синхронным пропсом. Для обеспечения обратной совместимости в Next.js 15 его по-прежнему можно использовать синхронно, но это поведение будет устаревшим в будущих версиях.
- В версии 14 и ранее