intermediate

Composition API

Организуйте логику компонента через setup, refs, reactive, computed, composables и lifecycle hooks.

Composition API организует логику компонента в `setup()` (или `<script setup>`) с явными импортами: `ref`, `reactive`, `computed`, `watch`, lifecycle hooks и composables для переиспользуемого поведения.

					<script setup>
import { ref, computed } from 'vue';

const count = ref(0);
const doubled = computed(() => count.value * 2);
</script>
				

Composables (`useX`) группируют состояние и эффекты по фиче, а не по типу опции — удобно для крупных компонентов и общей логики между маршрутами.

На интервью: сравнение с Options API для читаемости в больших командах, tree-shaking и вывод типов в `<script setup>`.

Типовые ошибки: деструктуризация reactive (теряется reactivity), забытый `.value` у ref в script, composables со скрытыми side effects без документации lifecycle.

Компромисс: явность и переиспользование против привычки к Options-only кодовым базам.

Чеклист:

  • `<script setup>` для эргономики.
  • Composables по границе фичи.
  • readonly при экспорте состояния из composable.
  • Документируйте, кто владеет подписками.