
Trong Vue, Component là “khối xây dựng” của ứng dụng. Thay vì viết tất cả trong App.vue
, chúng ta tách thành nhiều component nhỏ có thể tái sử dụng.
1. Tạo Component
Giả sử bạn muốn tạo 1 component hiển thị thông tin người dùng.
📂 Cấu trúc thư mục:
UserCard.vue
App.vue
2. Props – Truyền dữ liệu từ Cha → Con
-
Dùng
defineProps()
trong Composition API. -
Props có thể ràng buộc kiểu dữ liệu (
String
,Number
,Boolean
,Array
,Object
…).
Ví dụ:
Trong UserCard.vue:
3. Emit – Gửi sự kiện từ Con → Cha
Ví dụ: Nút “Xóa user” trong component con, khi click sẽ báo cho cha biết.
UserCard.vue
App.vue
4. Slot – Nội dung động trong Component
Slot giúp bạn chèn nội dung từ cha vào component con.
Card.vue
App.vue
👉 Ngoài ra còn có Named slot:
5. Lifecycle Hooks
Vue cung cấp các hook trong vòng đời component.
Ví dụ: log khi component được mount.
UserCard.vue
🎯 Kết luận
Trong bài này bạn đã học:
-
Cách tạo component trong Vue
-
Props (cha → con)
-
Emit (con → cha)
-
Slot & Named slot
-
Lifecycle hooks (
onMounted
,onUpdated
,onUnmounted
)