Search

[Vue3] v-if, v-show 정리

v-if

Vueμ—μ„œ νŠΉμ • 쑰건에 λ”°λΌμ„œ μ»΄ν¬λ„ŒνŠΈλ₯Ό λ Œλ”λ§ ν•  λ•ŒλŠ” v-ifλ₯Ό μ‚¬μš©ν•œλ‹€. v-ifμ•ˆμ˜ 쑰건이 true이면 좜λ ₯ falseλ©΄ 좜λ ₯ λ˜μ§€ μ•ŠλŠ”λ‹€.
const lnag = ref('Vue3');
JavaScript
볡사
<h2 v-if="lang === 'Vue3'">Hello Vue3</h2>
HTML
볡사
if - else, if - else if - else λ˜ν•œ μ‚¬μš© κ°€λŠ₯ν•˜λ‹€.
const lang = ref('Vue3');
JavaScript
볡사
<h2 v-if="lang === 'Java'">Hello Java</h2> <h2 v-else-if="lang === 'Vue3'">Hello Vue3</h2> <h2 v-else>Hello React</h2
HTML
볡사
<template> νƒœκ·Έλ₯Ό μ‚¬μš©ν•˜μ—¬ ν•˜λ‚˜μ˜ 쑰건으둜 μ—¬λŸ¬ 개의 HTMLμš”μ†Œλ₯Ό λ Œλ”λ§ ν•  μˆ˜λ„ μžˆλ‹€.
<template v-if="true"> <h1>Title: 제λͺ©</h1> <h2>author: 글쓴이</h2> <h3>content: λ‚΄μš©</h3> </template>
HTML
볡사

v-show

v-showλ₯Ό μ‚¬μš©ν•΄μ„œλ„ μš”μ†Œλ₯Ό μ•„λž˜μ™€ 같이 ν‘œν˜„ν•  수 μžˆλ‹€.
<h2 v-show="true">Hello Vue3</h2>
HTML
볡사
μ΄λ ‡κ²Œλ§Œ 봀을 λ•ŒλŠ” v-if와 μ‚¬μš©λ²•μ€ λ˜‘κ°™κ³  큰 차이가 μ—†λŠ” κ²ƒμœΌλ‘œ λ³΄μ΄λŠ”λ°, v-if와 v-show의 κ°€μž₯ 큰 μ°¨μ΄λŠ” μš”μ†Œμ˜ λ Œλ”λ§ 여뢀이닀. v-ifλŠ” μ•ˆμ— 쑰건이 true일 경우 λ Œλ”λ§ μžμ²΄κ°€ λ˜μ§€ μ•Šμ§€λ§Œ, v-show일 κ²½μš°λŠ” 쑰건의 true, false μ—¬λΆ€μ˜ 상관 없이 무쑰건 λ Œλ”λ§μ΄ 되고 쑰건에 λ”°λΌμ„œ display:none / display: block 속성 μ „ν™˜μ΄ λœλ‹€.
<h2 v-if="false">v-if</h2> <h2 v-show="false">v-show</h2>
HTML
볡사
개발자 도ꡬλ₯Ό μ‚¬μš©ν•΄μ„œ μœ„μ˜ νƒœκ·Έλ₯Ό 보면 μ•„λž˜μ™€ 같이 λ Œλ”λ§ 된 것을 μ•Œ 수 μžˆλ‹€.
v-ifλŠ” 쑰건이 자주 λ³€κ²½λ˜μ§€ μ•ŠλŠ” κ²½μš°λ‚˜, 무거운 μ»΄ν¬λ„ŒνŠΈλ‚˜ 리슀트λ₯Ό λ Œλ”λ§ ν•  λ•Œ 적합할 수 있고, v-showλŠ” μš”μ†Œκ°€ 자주 λ³€κ²½λ˜λŠ” κ²½μš°μ— 적합할 수 μžˆκ² λ‹€.