Vue系列之条件渲染(五)

 

前言

      之前介绍了v-bind 和 v-on 指令,今儿来介绍一下vue的条件渲染。一般的页面开发中会依据不同的判断条件来控制dom是否显示在页面上,以及dom元素是否存在。本章节就重点介绍 v-if 和 v-show 指令。

 

正文

1. v-if

       v-if 指令用于动态的渲染一部分内容,通过js语句返回为true时dom元素被渲染;反之,不存在。,举个栗子:

<div v-if="true"> 看到我啦 </div>
<div v-if="false"> 我消失啦 </div>

       大家知道 if 和 else 是一对难兄难弟,既然有了 v-if 指令哪里又少的了 v-else 呢~ 毕竟升级打怪的路上是多么的不容易,咳咳,言归正传!!v-else 表示不论 v-if 的最终结果是什么,它都将显示它的另一面。啃个栗子:

<div v-if="seen"> 看到啦 </div>
<div v-else> 没看到 </div>

       在上例中,当seen为true时,显示 看到啦;当seen为false时,显示 没看到。因为v-if和v-else为指令,所以它们必须添加在元素上,上面的两个例子都是加在单个元素上,还可以加在 <template>上。

<template v-if="show">
  <div v-if="seen"> 看到啦 </div>
  <div v-else> 没看到 </div>
</template>

       贴心的vue还为我们提供了 v-else-if,想必大家都猜到了,它是用来实现 v-if 的 else-if 的功能。

<div v-if="A"> AAA </div>
<div v-else-if="B"> B </div>
<div v-else> C </div>

注意:v-else 和 v-else-if 指令必须紧跟在 v-if 或者 v-else-if 的指令后面,不然不会被识别。

2. v-show

      v-show 也是渲染元素的一种方式,它与 v-if 的不同之处在于:v-if是仅有在条件为true的时候,才会渲染dom, 而 v-show 不论结果如何,都会渲染dom, 并依据结果显示或隐藏。
       在频繁对dom的显隐进行操作的时候,推荐使用 v-show,这样的成本开销最小,性能会更佳。

 

 

                                                                     觉得本文对你有帮助?请分享给更多人

                                                             关注「前端怪咖」,加入我们,一起提升前端技能

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值