vue学习笔记之v-if和v-show的区别


Posted in Javascript onSeptember 20, 2017

v-if vs v-show

v-if 是“真正的”条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。

v-if 也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。

相比之下, v-show 就简单得多——不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 进行切换。

一般来说, v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件不太可能改变,则使用 v-if 较好。

<template>
  <div id="app">
    <div v-if="isIf">
      if
    </div>
    <div v-show="ifShow">
      show
    </div>
    <button @click="toggleShow">toggle</button>
  </div>
</template>

<script>
  export default {
    name: 'app',
    data() {
      return {
        isIf : true,
        ifShow : true,
        loginType : "username"
      }
    },
    methods: {
      toggleShow : function(){
        this.ifShow = this.ifShow ? false : true;
        this.isIf = this.isIf ? false : true;
      }
    }
  }
</script>

看chrom控制台能更明显的看出来

vue学习笔记之v-if和v-show的区别

vue学习笔记之v-if和v-show的区别

对比可以看出v-if直接从代码中删除了,v-show只是通过display来切换状态,因此建议频繁切换的话用v-show比较好

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
防止动态加载JavaScript引起的内存泄漏问题
Oct 08 Javascript
JS实现点击图片在当前页面放大并可关闭的漂亮效果
Oct 18 Javascript
JS输入用户名自动显示邮箱后缀列表的方法
Jan 27 Javascript
简单对比分析JavaScript中的apply,call与this的使用
Dec 04 Javascript
一篇文章掌握RequireJS常用知识
Jan 26 Javascript
Bootstrap轮播插件简单使用方法介绍
Jun 21 Javascript
vue.js入门教程之绑定class和style样式
Sep 02 Javascript
ES6新特征数字、数组、字符串
Oct 01 Javascript
Bootstrap Table的使用总结
Oct 08 Javascript
js中async函数结合promise的小案例浅析
Apr 14 Javascript
从表单校验看JavaScript策略模式的使用详解
Oct 17 Javascript
vue实现购物车的小练习
Dec 21 Vue.js
jQuery实现可兼容IE6的淡入淡出效果告警提示功能示例
Sep 20 #jQuery
解决vue.js在编写过程中出现空格不规范报错的问题
Sep 20 #Javascript
PHP 实现一种多文件上传的方法
Sep 20 #Javascript
使用原生js+canvas实现模拟心电图的实例
Sep 20 #Javascript
Vue.js项目模板搭建图文教程
Sep 20 #Javascript
从对象列表中获取一个对象的方法,依据关键字和值
Sep 20 #Javascript
Node.js+jade+mongodb+mongoose实现爬虫分离入库与生成静态文件的方法
Sep 20 #Javascript
You might like
模拟flock实现文件锁定
2007/02/14 PHP
深入解析PHP的引用计数机制
2013/06/14 PHP
php获取系统变量方法小结
2015/05/29 PHP
PHP+jquery+CSS制作头像登录窗(仿QQ登陆)
2016/10/20 PHP
有道JavaScript监听浏览器的问题
2010/06/23 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
jQuery中nextUntil()方法用法实例
2015/01/07 Javascript
js实现类似新浪微博首页内容渐显效果的方法
2015/04/10 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
轻松实现jquery手风琴效果
2016/01/14 Javascript
Node.js如何自动审核团队的代码
2016/07/20 Javascript
JavaScript禁止微信浏览器下拉回弹效果
2017/05/16 Javascript
NodeJS链接MySql数据库的操作方法
2017/06/27 NodeJs
JS中正则表达式要注意lastIndex属性
2017/08/08 Javascript
vue中Axios的封装与API接口的管理详解
2018/08/09 Javascript
vue-cli构建vue项目的步骤详解
2019/01/27 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
python调用shell的方法
2013/11/20 Python
Python深入学习之装饰器
2014/08/31 Python
Python requests发送post请求的一些疑点
2018/05/20 Python
python try 异常处理(史上最全)
2019/03/07 Python
pycharm新建一个python工程步骤
2019/07/16 Python
Python Gitlab Api 使用方法
2019/08/28 Python
Python3 pandas 操作列表实例详解
2019/09/23 Python
意大利制造的男鞋和女鞋:SCAROSSO
2018/03/07 全球购物
机械工程学院大学生求职信
2014/05/25 职场文书
委托书的写法
2014/08/30 职场文书
停车位租赁协议书
2014/09/24 职场文书
见习报告的格式
2014/11/04 职场文书
小兵张嘎观后感
2015/06/03 职场文书
大学生村官工作心得体会
2016/01/23 职场文书
Redis遍历所有key的两个命令(KEYS 和 SCAN)
2021/04/12 Redis
Vue elementUI表单嵌套表格并对每行进行校验详解
2022/02/18 Vue.js
Python os和os.path模块详情
2022/04/02 Python
Python安装及建立虚拟环境的完整步骤
2022/06/25 Servers