Skip to content
āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ

Conditional Rendering ​

v-if ​

āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻž v-if āĻļāĻ°ā§āϤāϏāĻžāĻĒ⧇āĻ•ā§āώ⧇ āĻāĻ•āϟāĻŋ āĻŦā§āϞāĻ• āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤ āύāĻŋāĻ°ā§āĻĻ⧇āĻļ⧇āϰ āĻ…āĻ­āĻŋāĻŦā§āϝāĻ•ā§āϤāĻŋ āĻāĻ•āϟāĻŋ āϏāĻ¤ā§āϝ āĻŽāĻžāύ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāϞ⧇āχ āĻŦā§āϞāĻ•āϟāĻŋ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤

template
<h1 v-if="awesome">Vue is awesome!</h1>

v-else ​

āφāĻĒāύāĻŋ v-if āĻāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ "āĻ…āĻ¨ā§āϝ āĻŦā§āϞāĻ•" āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰāϤ⧇ v-else āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻž āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ:

template
<button @click="awesome = !awesome">Toggle</button>

<h1 v-if="awesome">Vue is awesome!</h1>
<h1 v-else>Oh no đŸ˜ĸ</h1>

Vue is awesome!

āĻāĻ•āϟāĻŋ v-else āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āĻŦāĻŋāϞāĻŽā§āĻŦ⧇ āĻāĻ•āϟāĻŋ v-if āĻŦāĻž v-else-if āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇ - āĻ…āĻ¨ā§āϝāĻĨāĻžāϝāĻŧ āĻāϟāĻŋ āĻ¸ā§āĻŦā§€āĻ•ā§ƒāϤ āĻšāĻŦ⧇ āύāĻžāĨ¤

v-else-if ​

v-else-if, āύāĻžāĻŽ āĻ…āύ⧁āϏāĻžāϰ⧇, v-if-āĻāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ "else if block" āĻšāĻŋāϏ⧇āĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇āĨ¤ āĻāϟāĻŋ āĻāĻ•āĻžāϧāĻŋāĻ•āĻŦāĻžāϰ āĻļ⧃āĻ™ā§āĻ–āϞāĻŋāϤ āĻšāϤ⧇ āĻĒāĻžāϰ⧇:

template
<div v-if="type === 'A'">
  A
</div>
<div v-else-if="type === 'B'">
  B
</div>
<div v-else-if="type === 'C'">
  C
</div>
<div v-else>
  Not A/B/C
</div>

v-else āĻāϰ āĻŽāϤ⧋, āĻāĻ•āϟāĻŋ v-else-if āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āĻŦāĻŋāϞāĻŽā§āĻŦ⧇ āĻāĻ•āϟāĻŋ v-if āĻŦāĻž v-else-if āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤

v-if on <template> ​

āĻ•āĻžāϰāĻŖ v-if āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻž, āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āĻāĻ•āĻ• āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āϝāĻĻāĻŋ āφāĻŽāϰāĻž āĻāĻ•āĻžāϧāĻŋāĻ• āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϟāĻ—āϞ āĻ•āϰāϤ⧇ āϚāĻžāχ? āĻāχ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āφāĻŽāϰāĻž āĻāĻ•āϟāĻŋ <template> āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡ v-if āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋ, āϝāĻž āĻāĻ•āϟāĻŋ āĻ…āĻĻ⧃āĻļā§āϝ āĻŽā§‹āĻĄāĻŧāĻ• āĻšāĻŋāϏ⧇āĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇āĨ¤ āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āϤ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻĢāϞāĻžāĻĢāϞ⧇ <template> āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻšāĻŦ⧇ āύāĻžāĨ¤

template
<template v-if="ok">
  <h1>Title</h1>
  <p>Paragraph 1</p>
  <p>Paragraph 2</p>
</template>

v-else āĻāĻŦāĻ‚ v-else-if āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ <template> āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

v-show ​

āĻļāĻ°ā§āϤāϏāĻžāĻĒ⧇āĻ•ā§āώ⧇ āĻāĻ•āϟāĻŋ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āφāϰ⧇āĻ•āϟāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻšāϞ v-show āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻžāĨ¤ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻŽā§‚āϞāϤ āĻāĻ•āχ:

template
<h1 v-show="ok">Hello!</h1>

āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻšāϞ v-show āϏāĻš āĻāĻ•āϟāĻŋ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϏāĻ°ā§āĻŦāĻĻāĻž āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāĻŦ⧇ āĻāĻŦāĻ‚ DOM-āĻ āĻĨāĻžāĻ•āĻŦ⧇; v-show āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻāϞāĻŋāĻŽā§‡āĻ¨ā§āĻŸā§‡āϰ display CSS āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋ āϟāĻ—āϞ āĻ•āϰ⧇āĨ¤

v-show <template> āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϕ⧇ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇ āύāĻž, āĻŦāĻž āĻāϟāĻŋ v-else-āĻāϰ āϏāĻžāĻĨ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āύāĻžāĨ¤

v-if vs. v-show ​

v-if āĻšāϞ "āĻŦāĻžāĻ¸ā§āϤāĻŦ" āĻļāĻ°ā§āϤāϏāĻžāĻĒ⧇āĻ•ā§āώ āϰ⧇āĻ¨ā§āĻĄāĻžāϰāĻŋāĻ‚ āĻ•āĻžāϰāĻŖ āĻāϟāĻŋ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧇ āϝ⧇ āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύāĻžāϞ āĻŦā§āϞāϕ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āχāϭ⧇āĻ¨ā§āϟ āĻļā§āϰ⧋āϤāĻž āĻāĻŦāĻ‚ child āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋ āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ āĻ§ā§āĻŦāĻ‚āϏ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ āĻāĻŦāĻ‚ āϟāĻ—āϞ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇⧎

v-ifāĻ“ āĻ…āϞāϏ: āϝāĻĻāĻŋ āĻļāĻ°ā§āϤāϟāĻŋ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āϰ⧇āĻ¨ā§āĻĄāĻžāϰ⧇ āĻŽāĻŋāĻĨā§āϝāĻž āĻšāϝāĻŧ, āϤāĻŦ⧇ āĻāϟāĻŋ āĻ•āĻŋāϛ⧁āχ āĻ•āϰāĻŦ⧇ āύāĻž - āĻļāĻ°ā§āϤāϟāĻŋ āĻĒā§āϰāĻĨāĻŽāĻŦāĻžāϰ āϏāĻ¤ā§āϝ āύāĻž āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻļāĻ°ā§āϤāϝ⧁āĻ•ā§āϤ āĻŦā§āϞāĻ• āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāĻŦ⧇ āύāĻžāĨ¤

āϤ⧁āϞāύāĻžāĻŽā§‚āϞāĻ•āĻ­āĻžāĻŦ⧇, v-show āĻ…āύ⧇āĻ• āϏāĻšāϜ - CSS-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āϟāĻ—āϞāĻŋāĻ‚āϝāĻŧ⧇āϰ āϏāĻžāĻĨ⧇ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āĻ…āĻŦāĻ¸ā§āĻĨāĻž āύāĻŋāĻ°ā§āĻŦāĻŋāĻļ⧇āώ⧇ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϟāĻŋ āϏāĻ°ā§āĻŦāĻĻāĻž āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

āϏāĻžāϧāĻžāϰāĻŖāĻ­āĻžāĻŦ⧇ āĻŦāϞāϤ⧇ āϗ⧇āϞ⧇, v-if-āĻāϰ āϟāĻ—āϞ āĻŦā§āϝāϝāĻŧ āĻŦ⧇āĻļāĻŋ āĻĨāĻžāϕ⧇ āϝāĻ–āύ v-show-āĻāϰ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻŦā§āϝāϝāĻŧ āĻŦ⧇āĻļāĻŋ āĻĨāĻžāϕ⧇āĨ¤ āϤāĻžāχ āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻĒā§āϰāĻžāϝāĻŧāĻļāχ āĻ•āĻŋāϛ⧁ āϟāĻ—āϞ āĻ•āϰāϤ⧇ āϚāĻžāύ āϤāĻžāĻšāϞ⧇ v-show āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āϰāĻžāύāϟāĻžāχāĻŽā§‡ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ⧇āϰ āϏāĻŽā§āĻ­āĻžāĻŦāύāĻž āύāĻž āĻĨāĻžāĻ•āϞ⧇ v-if āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āϰ⧁āύāĨ¤

v-if with v-for ​

āϝāĻ–āύ v-if āĻāĻŦāĻ‚ v-for āωāĻ­āϝāĻŧāχ āĻāĻ•āχ āωāĻĒāĻžāĻĻāĻžāύ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧ, v-if āĻĒā§āϰāĻĨāĻŽā§‡ āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āϜāĻžāύāĻžāϰ āϜāĻ¨ā§āϝ āϤāĻžāϞāĻŋāĻ•āĻž āϰ⧇āĻ¨ā§āĻĄāĻžāϰāĻŋāĻ‚ āĻ—āĻžāχāĻĄ āĻĻ⧇āϖ⧁āύāĨ¤

Note

āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻšāĻŋāϤ āĻ…āĻ—ā§āϰāĻžāϧāĻŋāĻ•āĻžāϰ⧇āϰ āĻ•āĻžāϰāϪ⧇ āĻāĻ•āχ āĻāϞāĻŋāĻŽā§‡āĻ¨ā§āĻŸā§‡ v-if āĻāĻŦāĻ‚ v-for āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻĒāϰāĻžāĻŽāĻ°ā§āĻļ āύāϝāĻŧāĨ¤ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āϜāĻžāύāĻžāϰ āϜāĻ¨ā§āϝ āϤāĻžāϞāĻŋāĻ•āĻž āϰ⧇āĻ¨ā§āĻĄāĻžāϰāĻŋāĻ‚ āĻ—āĻžāχāĻĄ āĻĒāĻĄāĻŧ⧁āύāĨ¤

Conditional Rendering has loaded