Trung BìnhVue.js iconVue.js

Composable là gì? So sánh với Mixins?

Composable là function dùng Composition API để đóng gói và tái sử dụng stateful logic.

Ví dụ:

javascript
// useFetch.js
export function useFetch(url) {
  const data = ref(null)
  const loading = ref(true)
  fetch(url).then(r => r.json()).then(d => { data.value = d; loading.value = false })
  return { data, loading }
}

So với Mixins:

  1. Không có naming collision — return value rõ ràng
  2. Source rõ ràng — biết data từ đâu
  3. Có thể nhận arguments (dynamic)
  4. Không có implicit state sharing

Mixins vẫn được hỗ trợ trong Vue 3 nhưng bị discouraged — Composition API là alternative được khuyến nghị.

Xem toàn bộ Vue.js cùng filter theo level & chủ đề con.

Mở danh sách Vue.js