Directive v-show de Vue3

Vue3 内置指令Vue3 Directives intégrées


v-showLa directive est utilisée pour basculer la visibilité d'un élément en fonction de la valeur truthy/falsy d'une expression. Elle contrôle l'affichage et le masquage de l'élément via la propriété CSS display.


Explication de base

v-showLa directive détermine si un élément est affiché en fonction de la valeur truthy/falsy de l'expression liée. Que la condition soit vraie ou fausse, l'élément est rendu dans le DOM, et sa visibilité est contrôlée via CSS.

  • Type attendu: any
  • Effet: Bascule la visibilité de l'élément en fonction de la valeur truthy/falsy de l'expression, contrôlée par la propriété CSS display.

Différence entre v-show et v-if

Fonctionnalitév-showv-if
Méthode de renduToujours rendu dans le DOM, contrôle uniquement l'affichage et le masquageEffectue le rendu lorsque la condition est vraie, n'effectue pas de rendu lorsqu'elle est fausse
Performances de basculementFaible surcoût de basculement (ne modifie que le CSS)Surcoût de basculement élevé (nécessite la création/la destruction d'éléments)

Scénarios d'utilisation

1. Basculement fréquent de l'état d'affichage

Lorsqu'un élément doit être affiché/masqué fréquemment, utiliser v-show offre de meilleures performances :

Exemple

<template>
  <div>
    <button @click="showModal = true">Ouvrir la popup</button>
    <div class="modal" v-show="showModal" @click="showModal = false">
      <div class="modal-content" @click.stop>
        <p>Ceci est une popup</p>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return { showModal: false }
  }
}
</script>

Vue3 内置指令Vue3 Directives intégrées

Autres extensions