Vue入门-指令学习-v-show和v-if

v-show:

作用:控制元素的显示隐藏

语法:v-show="表达式" 表达式值true显示,false隐藏

v-if

作用:控制元素的显示隐藏(条件渲染)

语法: v=if="表达式" 表达式true显示,false隐藏

注意:

v-show和v-if效果上一样,但是底层原理不同,v-show是通过切换css的display:none属性来显示隐藏,而v-if则是根据判断条件控制元素的创建和移除

v-show更适合需要频繁切换显示隐藏场景的情况

v-if更适合条件渲染

使用demo描述

demo:

参数全为true

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- <script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script> -->
    <style>
        .box {
             border: 2px solid black;
             width: 500px;
             height: 400px;
             margin-top: 10px;
         }
     </style>
</head>

<body>
    <div id="app">
        <div v-show="flag" class="box">v-show控制的盒子</div>
        <div v-if="flag" class="box">v-if控制的盒子</div>
    </div>

    <script src="js/vue.js"></script>

    <script>
        const app = new Vue({
            //通过el配置选择器,指定Vue管理的是哪个盒子
            el: '#app',
            //通过data提供数据
            data: {
                flag: true
            }

        })
    </script>
</body>

</html>

页面效果:

v-show和v-if全部都显示

页面检查中能看到俩条对应的代码

<div v-show="flag" class="box">v-show控制的盒子</div>
<div v-if="flag" class="box">v-if控制的盒子</div>

将true改成false后的页面效果

页面检查中只能看到v-show的代码,看不到v-if的代码

<div v-show="flag" class="box">v-show控制的盒子</div>
<!---->

上一篇:湖北大带宽高防云服务器的选择之道


下一篇:模型训练