Routing
WIP
Bài viết đang trong quá trình hoàn thiện
Để đẩy nhanh việc phát hành bài viết, bạn có thể:
- 📢 Chia sẻ phản hồi của bạn tại bài viết (comment/emoji-reaction)
- 💬 Thu thập tài liệu liên quan về chủ đề từ chat
- ⚒️ Đóng góp bằng bất kỳ cách nào khác
🍰 Stay tuned!
Tình huống
URL đến các trang được hardcode trong các layer bên dưới pages
entities/post/card
<Card>
<Card.Title
href={`/post/${data.id}`}
title={data.name}
/>
...
</Card>
Vấn đề
URL không được tập trung trong layer pages, nơi chúng thuộc về theo phạm vi trách nhiệm
Nếu bỏ qua
Khi thay đổi URL, bạn sẽ phải nhớ rằng các URL này (và logic của URL/redirect) có thể nằm ở tất cả các layer trừ pages
Và điều đó cũng có nghĩa là giờ đây ngay cả một product card đơn giản cũng đảm nhận một phần trách nhiệm từ pages, làm mờ logic của project
Giải pháp
Xác định cách làm việc với URL/redirect từ cấp độ page trở lên
Chuyển xuống các layer bên dưới thông qua composition/props/factories