Thư mục tạo thành tuyến đường
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 5 trên 47.
Hầu hết framework đều yêu cầu bạn ghi lại các đường dẫn (route) ở một nơi nào đó: một danh sách đường dẫn, mỗi đường dẫn đi kèm với một thành phần (component). Thay vào đó, Next.js đọc các đường dẫn từ cây thư mục của bạn.
Toàn bộ quy tắc gói gọn trong một dòng: một thư mục bên trong app/ là một phần của URL, còn page.jsx bên trong thư mục đó là nội dung khách truy cập nhìn thấy.
app/
page.jsx -> /
about/
page.jsx -> /about
menu/
page.jsx -> /menu
drinks/
page.jsx -> /menu/drinksĐọc URL bằng cách đi xuống cây thư mục. /menu/drinks là thư mục menu, tiếp đến là thư mục drinks, rồi đến trang bên trong thư mục đó. Thư mục lồng nhau thì URL cũng lồng nhau. Không có bước riêng nào.
Nửa còn lại của quy tắc cũng quan trọng không kém: thư mục chỉ trở thành một đường dẫn khi có page.jsx.
app/
menu/
drinks/
page.jsx -> /menu/drinks works
MenuCard.jsx not a route
-> /menu 404Ở đây, app/menu/ tồn tại, nhưng không ai có thể truy cập /menu: trong đó không có tệp trang nào. Nó chỉ là một thư mục chứa trên đường dẫn đến /menu/drinks. Đây là một tính năng: bạn có thể nhóm các tệp liên quan trong app/ mà không vô tình công khai một URL.
Và tên thư mục (folder) chính là phân đoạn URL, đúng từng ký tự. Nếu đặt tên thư mục là About Us, URL sẽ là /About%20Us, vì vậy tên thư mục định tuyến được viết thường và dùng dấu gạch nối: app/about-us/.
Tự làm thử
Bài học này không có thử thách code.
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ến