前言
在页面开发中,总会有需要判断情况,然后控制显示页面元素或者组件的情况,此时此刻就要使用「v-if」、「v-show」, 这两者的命令在效果上基本上是一致的。但是又有不同之处,下面来看看。
基本使用说明
v-if : 当flag为true,则显示,如果flag为false,则隐藏。v-if 的特点:每次都会重新删除或创建元素
<h3 v-if="flag">这是用v-if控制的元素</h3>
v-show : 当flag为true,则显示,如果flag为false,则隐藏。v-show 的特点:每次不会重新进行DOM的删除和创建操作,只是切换了元素的 display:none 样式
<h3 v-show="flag">这是用v-show控制的元素</h3>
设置flag为false,隐藏 v-if 和 v-show 的效果
<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<h3 v-if="flag">这是用v-if控制的元素</h3>
<h3 v-show="flag">这是用v-show控制的元素</h3>
</div>
<!-- 1.导入vue.js库 -->
<script src="lib/vue.js"></script>
<script>
// 2. 创建一个Vue的实例
var vm = new Vue({
el: '#app',
data: {
flag: false
},
methods:{}
})
</script>
</body>
</html>
浏览器显示如下:

总结
-
如果元素涉及到频繁的切换,最好不要使用 v-if, 而是推荐使用 v-show 。因为v-if 会频繁创建、删除dom元素,非常效果浏览器性能。
-
如果元素可能永远也不会被显示出来被用户看到,则推荐使用 v-if。因为v-show总是需要创建dom元素的,而 v-if 只有需要显示的时候才会创建。
交流QQ群:

点击下面,查看更多Vue系列文章
原文始发于微信公众号(海洋的渔夫):10. Vue v-if 和 v-show 的使用和特点
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/31942.html