vue中v-if和v-show有什么区别?

摘要:
然而,这两种选择之间存在差异。当v-if切换条件时,它将适当地创建和销毁标签,而v-show将仅在初始化期间加载一次。因此,v-if的成本比v-show的成本更大。v-show控制的元素的display属性将渲染标签,而不管初始条件如何。当初始条件为假时,v-show的初始渲染成本很高。当我们使用v-if频繁切换时,v-if的切换成本很高。当我们使用v-show多分支时,我们只能选择v-if来查看DOM在开发项目期间是否频繁操作

两个都是让元素不可见。但是两个选项有区别

  1. v-if 在条件切换时,会对标签进行适当的创建和销毁,而v-show则仅在初始化时加载一次,因此v-if的开销比v-show大
  2. v-show控制的时元素的display属性,无论初始条件是否成立,都会渲染标签。而v-if是惰性的,只有在条件成立时才渲染为真实的标签,条件为假,不会去渲染标签

项目中如何使用?

  • 当初始条件为假时,v-show初始渲染开销较高,使用v-if
  • 当我们频繁切换开关是,v-if切换开销较高,使用v-show
  • 多路分支,只能选择v-if
  • 具体看开发项目的时候是否频繁操作DOM

免责声明:文章转载自《vue中v-if和v-show有什么区别?》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇货币层次(货币分层)nmap 高级扫描用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

VueJS/Vuex/vue-router笔记- 开发/Error错误处理及优化相关记录

 开发记录备查笔记.....  Q.Vuejs(2.6.x):TS下使用Vuex例子:   记一个ts下的vuex store,备查   可以用以前的ES写法,但是想用强类型约束的话,就得改成TS的写法.   (吐槽:vue虽然已经全部用TS重构了,但还是有大量的any变量,希望随着以后的迭代,能完善成更出色的泛型类吧,现在的vuex真是不太好用,还不如自...

vue router:解决相同路径不同路由参数跳转同一页面,路由参数不动态刷新的问题

问题描述 当我们使用同一路径跳转不同页面时,路由参数不会刷新,所以组件中接收不到,比如我的路由定义和路由跳转链接如下:当然我们人为不肯直接这样写啦~这里模拟问题写的demo 采用 watch 监听 1. 在点击跳转的组件中使用 watch 进行检测动态改变路由参数: watch: { // 利用watch方法检测路由变化:进行重新赋值 $r...

webpack4.x 从零开始配置vue 项目(一)基础搭建项目

序 现在依旧记得第一次看到webpack3.x 版本配置时候的状态刚开始看到这些真的是一脸懵。希望这篇文章能帮到刚开始入门的同学。 webpack 是什么? webpack是一个模块化打包工具,webpack 通过入口分析项目结构,找到JavaScript模块以及一些不能直接在浏览器上运行的语言、语法等 如(scss、ts、es6+等),并将其打包成可以直...

前端框架Vue自学之Vue组件化开发(三)

终极目标:掌握和使用Vue(全家桶:Core+Vue-router+Vuex) 本博客目的:记录Vue学习的进度和心得(Vue组件化开发) 内容:通过官网说明,掌握Vue组件化开发。 正文: Vue组件化开发 一、认识组件化 1、什么是组件化? 任何一个人处理信息的逻辑能力都是有限的,所以,当面对一个非常复杂的问题时,我们不太可能一次性搞定一大堆的内容。但...

vue 获取元素高度

1、html <div ref="getheight"></div> <br><br> 2、JavaScript //获取高度值 (内容高+padding+边框) let height= this.$refs.getheight.offsetHeight; //获取元素样式值 (存在单位) le...

vue官网总结

1.Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统:2.在 Vue 里,一个组件本质上是一个拥有预定义选项的一个 Vue 实例。 所有的 Vue 组件都是 Vue 实例,并且接受相同的选项对象 (一些根实例特有的选项除外)3.只有当实例被创建时就已经存在于 data 中的属性才是响应式的,vm.b = 不会触发视图的...