Dans Vue.js, la directive v-cloak
est utilisée principalement pour éviter le scintillement du contenu non compilé. Cette fonctionnalité est particulièrement utile lors du chargement de l'application Vue.js, où il est possible d'observer brièvement le contenu non compilé jusqu'à ce que Vue.js termine son initialisation.
En pratique, Vue.js ajoute automatiquement l'attribut v-cloak
à l'élément racine de l'application. L'attribut v-cloak
restera sur l'élément jusqu'à ce que l'instance vue associée termine sa compilation. Ensuite, l'attribut v-cloak
est retiré. Vous pouvez utiliser des feuilles de style pour contrôler ce qui est affiché pendant ce temps.
Voici comment vous pouvez l'utiliser dans votre code :
<div id="app" v-cloak>
{{ message }}
</div>
Et dans votre CSS :
[v-cloak] {
display: none;
}
Dans cet exemple, l'élément avec l'id app
sera caché jusqu'à ce que Vue.js ait fini de compiler l'instance vue correspondante. Ceci est très pratique pour améliorer l'expérience utilisateur en évitant le flash du contenu non compilé.
En termes de meilleures pratiques, vous devriez toujours utiliser v-cloak
pour cacher l'instance vue avant que celle-ci ne soit prête à être affichée. Cela permet d'éviter un FOUC (Flash Of Unstyled Content) qui pourrait perturber l'expérience utilisateur.
Le choix d'utiliser v-cloak
dépendra également de la taille et de la complexité de votre application. Pour de petites applications, l'utilisation de v-cloak
peut ne pas être nécessaire car la compilation et le rendu sont suffisamment rapides. Cependant, pour de grandes applications avec de nombreux composants, v-cloak
peut aider à améliorer l'expérience utilisateur en évitant le clignotement de contenu non compilé.