Vue学习-------------(11)v-show的使用及与v-if的区别

v-show的使用:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
    <div id="app">
    	  <h2 v-if="isShow">{{message}}</h2>
    	   <h2 v-show="isShow">{{message}}</h2>
    </div>
    <script src="../js/vue.js"></script>
    <script>
        const app=new Vue({
            el : '#app',     
            data: {
            	   isShow: true
            }
        })
    </script>
</body>
</html>

  

v-show和v-if的区别

 

  1. 相同点:v-show和v-if都能控制元素的显示和隐藏。
  2. 不同点:
    • 实现本质方法不同
      • v-show本质就是通过设置css中的display为none,控制隐藏
      • v-if是动态的向DOM树内添加或者删除DOM元素
    • 编译的区别
      • v-show其实就是在控制css
      • v-if切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件
    • 编译的条件
      • v-show都会编译,初始值为false,只是将display设为none,但它也编译了
      • v-if初始值为false,就不会编译了
    • 性能
      • v-show只编译一次,后面其实就是控制css,而v-if不停的销毁和创建,故v-show性能更好一点。
      • 注意点:因为v-show实际是操作display:" "或者none,当css本身有display:none时,v-show无法让其显示
posted @ 2021-03-16 10:34  455994206  阅读(93)  评论(0)    收藏  举报