Les directives personnalisées vous permettent d'encapsuler la manipulation DOM bas niveau en tant qu'attribut v-* réutilisable. Utilisez-les quand vous avez besoin d'un accès direct à un élément (focus, scroll, bibliothèques DOM tierces) — des choses que les composants/props ne couvrent pas naturellement.
Définir une directive 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>
