• VUE课程---20、条件渲染v-show


    VUE课程---20、条件渲染v-show

    一、总结

    一句话总结:

    条件渲染指令除了v-if,还有v-show,v-show指令通过改变元素的display属性来控制元素的显示和隐藏
    <div id="app">
        <p v-if="flag">{{msg}}---v-if控制</p>
        <p v-show="flag">{{msg}}---v-show控制</p>
        <button @click="flag=!flag">toggle</button>
    </div>
    <script src="../js/vue.js"></script>
    <script>
        let vm=new Vue({
            el:'#app', //element
            data:{
                msg:'欢迎来到vue的世界',
                flag:true
            }
        });
    </script>

    1、条件渲染指令v-if和v-show的区别?

    -、v-if是真正的条件渲染,v-if中对应的元素的状态为true的时候,元素才被渲染出来,否则不被渲染
    -、v-show只是简单的改变元素的display属性,v-show中对应的元素的状态为false时,元素的display属性变为none,所以不被显示

    2、条件渲染指令v-if和v-show的 性能消耗问题?

    *、v-if指令性能消耗问题:每次元素改变状态,都要被重新渲染,所以元素的切换性能消耗比较大
    *、v-show指令性能消耗问题:v-show控制的元素最初都会被渲染出来,每次改变状态,只是改变元素的display属性的值,所以元素的初始性能消耗比较大

    3、条件渲染指令v-if和v-show的使用场景?

    ^、v-if使用场景:很少被切换状态的元素,或者可能永远都不被显示的元素
    ^、v-show使用场景:经常切换状态的元素

    二、条件渲染v-show

    博客对应课程的视频位置:20、条件渲染v-show
    https://www.fanrenyi.com/video/26/237

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>条件渲染v-show</title>
     6 </head>
     7 <body>
     8 <!--
     9 条件渲染指令除了v-if,还有v-show,v-show指令通过改变元素的display属性来控制元素的显示和隐藏
    10 
    11 条件渲染指令v-if和v-show的区别
    12 -、v-if是真正的条件渲染,v-if中对应的元素的状态为true的时候,元素才被渲染出来,否则不被渲染
    13 -、v-show只是简单的改变元素的display属性,v-show中对应的元素的状态为false时,元素的display属性变为none,所以不被显示
    14 
    15 条件渲染指令v-if和v-show的 性能消耗问题
    16 *、v-if指令性能消耗问题:每次元素改变状态,都要被重新渲染,所以元素的切换性能消耗比较大
    17 *、v-show指令性能消耗问题:v-show控制的元素最初都会被渲染出来,每次改变状态,只是改变元素的display属性的值,所以元素的初始性能消耗比较大
    18 
    19 条件渲染指令v-if和v-show的使用场景
    20 ^、v-if使用场景:很少被切换状态的元素,或者可能永远都不被显示的元素
    21 ^、v-show使用场景:经常切换状态的元素
    22 -->
    23 <div id="app">
    24     <!--
    25     v-if指令和v-show指令的区别
    26     v-if指令通过状态来控制元素的显示和隐藏是直接通过操作dom来添加或者移除元素来实现的
    27     v-if指令的初始消耗比较小,切换消耗比较大
    28     适用场景:可能永远都不被显示的元素,或者很少切换状态的元素
    29 
    30 
    31     v-show指令控制元素的显示和隐藏是通过改变元素的display属性
    32     所以v-show控制的元素最开始就要被加载出来,所以这样v-show指令的初始消耗就比较大,
    33     所以切换消耗比较小
    34     适应的场景:切换状态比较频繁的元素
    35     -->
    36     <p v-if="flag">{{msg}}---v-if控制</p>
    37     <p v-show="flag">{{msg}}---v-show控制</p>
    38 <!--    <button @click="toggle">toggle</button>-->
    39     <button @click="flag=!flag">toggle</button>
    40 </div>
    41 <script src="../js/vue.js"></script>
    42 <script>
    43     let vm=new Vue({
    44         el:'#app', //element
    45         data:{
    46             msg:'欢迎来到vue的世界',
    47             flag:true
    48         },
    49         methods:{
    50             toggle(){
    51                 this.flag=!this.flag;
    52             }
    53         }
    54     });
    55 </script>
    56 </body>
    57 </html>

     
    条件渲染指令v-ifv-show的 性能消耗问题
  • 相关阅读:
    Runtime类
    递归(99乘法表)
    计算某天是在一年中的第几天
    数组逆序输出
    打印数组格式
    选择排序(直接把最小或最大的数选出来排列)
    冒泡排序
    比较两个字符数组是否相等
    汉字转阿斯克马值
    R语言调用C函数
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12901060.html
Copyright © 2020-2023  润新知