Дэфолтны файл слоту ў NextJS
У папярэднім уроке мы зрабілі
дынамічны слот з імем
info
:
export default function RootLayout({children, info}) {
return (
<html lang="en">
<body>
<header>
<div>
{info}
</div>
</header>
<main>
{children}
</main>
<footer>
footer
</footer>
</body>
</html>
);
}
Ёсць, аднак, праблема. Рэч
у тым, што наш слот працуе
толькі для двух тыпаў адрасоў:
/users
і /posts
.
Калі ж убіць у адрасны радок
іншы адрас, для якога наш
слот не вызначаны, то NextJS
выдасць 404
памылку.
Для вырашэння праблемы непасрэдна
ў папку са слотам варба пакласці
спецыяльны файл default.jsx
.
У гэтым файле павінен быць кампанент,
які будзе паказвацца, калі
ў адрасны радок убіты URL, не зададзены
для нашага слоту.
Гэта значыць у нашым выпадку атрымаецца наступная файлавая структура:
- /app/
- /@info/
- default.jsx
- /users/
- page.jsx
- /posts/
- page.jsx
- /@info/
Упэўніцеся, што дынамічны слот
выдае 404
памылку, калі
ў адрасны радок убіты URL, не зададзены
для нашага слоту.
Выпраўце праблему з 404
памылкай.