美文网首页
v-show与v-if的区别

v-show与v-if的区别

作者: 小李不小 | 来源:发表于2021-08-27 21:13 被阅读0次
    • 控制手段不同
    • 编译过程不同
    • 编译条件不同

    控制手段:v-show隐藏则是为该元素添加css--display:none,dom元素依旧还在。v-if显示隐藏是将dom元素整个添加或删除

    编译过程:v-if切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件;v-show只是简单的基于css切换

    编译条件:v-if是真正的条件渲染,它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。只有渲染条件为假时,并不做操作,直到为真才渲染

    v-show 由false变为true的时候不会触发组件的生命周期

    v-if由false变为true的时候,触发组件的beforeCreate、create、beforeMount、mounted钩子,由true变为false的时候触发组件的beforeDestory、destoryed方法

    性能消耗:v-if有更高的切换消耗;v-show有更高的初始渲染消耗;

    相关文章

      网友评论

          本文标题:v-show与v-if的区别

          本文链接:https://www.haomeiwen.com/subject/fcqymltx.html