Bố cục lồng nhau
Thuộc phần Kiến thức thiết yếu về Next.js trong hành trình React của Coddy. Bài học 13 trên 47.
Bố cục gốc không phải là bố cục duy nhất. Thêm một layout.jsx vào bất kỳ thư mục nào, bố cục đó sẽ bao bọc các route của thư mục ấy và chỉ các route đó.
app/
layout.jsx wraps EVERYTHING
page.jsx /
menu/
layout.jsx wraps /menu and everything under it
page.jsx /menu
pizza/
page.jsx /menu/pizzaTruy cập /menu/pizza và Next.js lồng chúng theo thứ tự từ ngoài vào trong:
RootLayout
MenuLayout
PizzaPageTruy cập / và chỉ bố cục gốc chạy: bố cục menu không nằm trong đường dẫn URL đó nên sẽ không bao giờ xuất hiện.
Bố cục lồng nhau được viết giống hệt bố cục gốc, chỉ bỏ phần khung: không có <html>, không có <body>. Chỉ là một component nhận children.
Đây là cách mỗi phần của trang web có thanh bên riêng, các tab riêng và tiêu đề riêng mà không cần một câu lệnh if nào về URL hiện tại.
Thử thách
DễPhần menu cần có tiêu đề riêng: trên /menu và các trang món ăn, nhưng không ở nơi nào khác.
app/menu/layout.jsx đã có sẵn và chuyển thẳng children qua. Bên trong <section>, phía trên {children}, hãy thêm:
- Một
<h2>cóid="menu-header"và văn bảnMenu
Các bài kiểm tra xác nhận tiêu đề hiển thị trên /menu và /menu/pizza, đồng thời không còn hiển thị khi quay lại /.
Tự làm thử
import './globals.css';
export const metadata = {
title: 'My App',
};
export default function RootLayout({ children }) {
return (
<html lang="en">
<body>
{children}
</body>
</html>
);
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức thiết yếu về Next.js
4Máy chủ và client
Hai loại thành phầnĐọc lỗiDòng 'use client'Giữ phần client nhỏ gọnMáy chủ bên trong clientTóm tắt: máy chủ và client7Điều hướng phía máy khách
Liên kết đang hoạt độngĐiều hướng bằng codeLọc bằng URLBộ xử lý tuyến đườngÔn tập: Điều hướng2Định tuyến và liên kết
Thư mục tạo thành tuyến đườngTuyến đường lồng nhauLiên kết các trangTuyến đường độngTrang không tìm thấyÔn tập: định tuyến3Bố cục và siêu dữ liệu
Bố cục gốcĐiều hướng dùng chungBố cục lồng nhauSiêu dữ liệu trangSiêu dữ liệu độngÔn tập: bố cục