Vue.js ist ein beliebtes JavaScript-Framework für den Aufbau von Benutzeroberflächen. Es hat eine Vielzahl von eingebauten Direktiven, die Sie verwenden können, um Ihre HTML-Templates zu steuern. Eine dieser Direktiven ist die v-if
-Direktive, die in Kombination mit v-else-if
und v-else
verwendet werden kann, um Elemente bedingt zu rendern.
Die v-if
-Direktive wird verwendet, um ein Element nur dann zu rendern, wenn die Bedingung wahr ist. Zum Beispiel:
<div v-if="message === 'hello'">
Hallo Welt!
</div>
In dem oben genannten Code wird das <div>
-Element nur gerendert, wenn die Variable message
den Wert 'hello' hat.
Die v-else-if
-Direktive wird verwendet, um eine zusätzliche Bedingung zu prüfen, wenn die vorherige v-if
- oder v-else-if
-Bedingung falsch ist. Zum Beispiel:
<div v-if="value === 1">
Wert ist 1.
</div>
<div v-else-if="value === 2">
Wert ist 2.
</div>
In diesem Beispiel wird das erste <div>
-Element gerendert, wenn value
gleich 1 ist, und das zweite wird gerendert, wenn value
gleich 2 ist.
Schließlich wird die v-else
-Direktive verwendet, um ein Element zu rendern, wenn alle vorherigen v-if
und v-else-if
-Bedingungen nicht erfüllt sind.
<div v-if="age > 18">
Du bist volljährig.
</div>
<div v-else>
Du bist minderjährig.
</div>
In diesem Beispiel wird das erste <div>
-Element gerendert, wenn die Variable age
größer als 18 ist, und das zweite <div>
-Element wird gerendert, wenn das nicht der Fall ist.
Gut zu beachten ist, dass v-if
tatsächlich das Element aus dem DOM entfernt und hinzufügt, wohingegen die v-show
Direktive, die einen ähnlichen Zweck erfüllt, lediglich die CSS-Eigenschaft display
des Elementes ändert. In den meisten Fällen ist jedoch die Verwendung von v-if
, v-else-if
und v-else
ausreichend und einfacher zu handhaben.