全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-20 6 分钟 ✍️ juanwangdev

v-if条件渲染

v-if 用于根据条件渲染内容,条件为假时元素完全销毁。

基本用法

HTML
<h1 v-if="isVisible">标题</h1>

v-else-if 和 v-else

HTML
<div v-if="type === 'A'">A类型</div>
<div v-else-if="type === 'B'">B类型</div>
<div v-else>其他类型</div>

v-elsev-else-if 必须紧跟在 v-ifv-else-if 元素后面。

template 上使用

HTML
<template v-if="ok">
  <h1>标题</h1>
  <p>段落1</p>
  <p>段落2</p>
</template>

使用 <template> 可包裹多个元素而不产生额外包裹元素。

v-if 与 v-show 对比

特性v-ifv-show
渲染方式条件为真时才渲染始终渲染,仅切换 CSS display
切换开销较大(销毁/重建)较小(仅 CSS 切换)
初始渲染开销较小(可能不渲染)较大(始终渲染)
适用场景条件很少改变频繁切换

要点总结

  • v-if 是真正的条件渲染,条件为假时元素完全销毁
  • 支持 v-else-ifv-else 链式分支
  • 可在 <template> 上使用以包裹多个元素
  • 频繁切换用 v-show,条件少改变用 v-if

📝 发现内容有误?点击此处直接编辑

← 上一篇 v-html与v-text
下一篇 → v-model双向绑定
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库