Directiva v-show en Vue

Otra opción para la visualización condicional es la directiva v-show. Se usa de manera muy similar:

html<template>
  <p v-show="isAuth">
    +++
  </p>
</template>

La diferencia es que un elemento con v-show siempre será renderizado y permanecerá en el DOM, y solo se alternará su propiedad CSS display.

La directiva v-if realiza un renderizado condicional "real", ya que garantiza que los detectores de eventos y los componentes hijos dentro del bloque sean destruidos y recreados adecuadamente durante las alternancias de condición.

La directiva v-if también es perezosa: si la condición es falsa en el momento del renderizado inicial, no hará nada - el bloque condicional no se renderizará hasta que la condición se vuelva verdadera.

En comparación, v-show es mucho más simple - el elemento siempre se renderiza, independientemente del estado inicial, alternándose basado en CSS.

En general, v-if tiene un mayor costo de alternancia, mientras que v-show tiene un mayor costo de renderizado inicial. Así que use v-show si las alternancias serán frecuentes, y prefiera v-if si la condición puede que no cambie durante la ejecución.

La directiva v-show no se puede usar en un elemento template y no funciona con v-else.

Задание 1

Se da un párrafo y un botón. Haz que el párrafo se alterne al hacer clic en el botón.

Задание 2

Explique las diferencias entre las directivas v-show y v-if.

Задание 3

Explique cuándo es mejor usar la directiva v-show, y cuándo - v-if.

Задание 4

Explique qué limitaciones tiene la directiva v-show.