Vue-006 v-if的使用以及和v-show的区别

一、v-if的使用

v-if可以控制Dom显示和隐藏,当值为true时就显示,false时就隐藏

div

    <h2 v-if="true">v-if=“true”</h2>
    <h2 v-if="false">v-if=“false”</h2>

显示效果

只有第一行显示,第二行就隐藏了。

使用的时候, 一般把true和false写成一个变量放到data中,然后再加个按钮来控制变量的boolean值

div

    <button @click="btn">按钮</button>
    <h2 v-if="isShow">v-if为true</h2>

data和methods

        data:{
            isShow:true
        },
        methods:{
            btn(){
                this.isShow=!this.isShow;
            }
        }

运行效果

这样加起来也可以算是一个小例子了

二、v-if和v-else一起使用

v-if和v-else放在一起的时候,v-else后面就不用再写表达式

v-if为真的时候显示v-if,不显示v-else

v-if为假的时候不显示v-if,显示v-else

来个例子,div

    <button @click="btn">按钮</button>
    <h2 v-if="isShow">v-if为true</h2>
    <h2 v-else>我是v-else</h2>

data和methods不变,和上面的一样

        data:{
            isShow:true
        },
        methods:{
            btn(){
                this.isShow=!this.isShow;
            }
        }

运行效果

三、v-if,v-else,v-else-if

这三个放在一起的时候很少,如果有这样的情况,一般也就写成一个方法来代替了

要写的话是这样子的

div

    <h2 v-pre>v-pre,不做解析直接显示代码</h2>
    <h2 v-if="score>=90 & score<=100">优秀</h2>
    <h2 v-else-if="score>=70">良好</h2>
    <h2 v-else-if="score>=60">及格</h2>
    <h2 v-else>不及格</h2>

四、v-if和v-show的区别

v-if和v-show都控制显示和隐藏,效果看起来差不多,但是原理不一样。

先看例子

div

    <h2 v-if="false">我是v-if</h2>
    <h2 v-show="false">我是v-show</h2>

运行效果

v-if让整个<h2>隐藏了,控制整个Dom比较耗时,所以如果要频繁切换的话就不用v-if了

v-show只是给<h2>加上了CSS语句

总结:两者效果一样,v-show省时省性能,频繁切换的话就用v-show

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

youngcave2

等待第一笔打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值