Le direttive personalizzate ti permettono di incapsulare la manipolazione DOM di basso livello come attributo v-* riutilizzabile. Usale quando hai bisogno di accesso diretto a un elemento (focus, scroll, librerie DOM di terze parti) — cose che componenti/props non ricoprono naturalmente.
Definire una direttiva locale
<script setup>
// a directive is an object of lifecycle hooks; in <script setup>, name it vXxx
const vFocus = {
mounted(el) {
el.focus(); // `el` is the raw DOM element
},
};
</script>
<template>
<input v-focus /> <!-- autofocuses on mount -->
</template>
