vuejs中v-show和v-if的区别是什么

发布时间:2022-05-22 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了vuejs中v-show和v-if的区别是什么脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

区别:1、“v-if”是动态的向DOM树内添加或者删除DOM元素,“v-show”是通过设置DOM元素的display样式属性控制显隐;2、编译过程不同;3、编译条件不同;4、“v-if”的切换消耗高,“v-show”的初始渲染消耗高等等

vuejs中v-show和v-if的区别是什么

本教程操作环境:windows7系统、vue2.9.6版,DELL G3脑。

v-if与v-show的区别

v-if指令与v-show指令都可以根据值动态控制DOM元素显示隐藏,v-ifv-show属于Vue的内部常用的指令,指令的职责是当表达式的值改变时把某些特殊的行为应用到DOM上。

描述

v-if

v-if指令用于条件性地渲染一块内容,这块内容只会在指令的表达式返回truthy值的时候被渲染。

<div v-if="show">show</div>
<div v-else>hide</div>

v-show

v-show指令用法大致一样,不同的是带有v-show指令的元素始终会被渲染并保留在DOM中,v-show只是简单地切换元素的CSS PRoPErty display

<div v-show="show">show</div>

区别

  • 实现方式: v-if是动态的向DOM树内添加或者删除DOM元素,v-show是通过设置DOM元素的display样式属性控制显隐。

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

  • 编译条件: v-if是惰性的,如果初始条件为假,则什么也不做,只有在条件第一次变为真时才开始局部编译, v-show是在任何条件下都被编译,然后被缓存,而且DOM元素保留。

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

  • 使用场景: v-if适合条件不太可能改变的情况,v-show适合条件频繁切换的情况。

  • @H_753_126@

    相关推荐:《vue.js教程》

    以上就是vuejs中v-show和v-if的区别是什么的详细内容,更多请关注脚本宝典其它相关文章

    脚本宝典总结

    以上是脚本宝典为你收集整理的vuejs中v-show和v-if的区别是什么全部内容,希望文章能够帮你解决vuejs中v-show和v-if的区别是什么所遇到的问题。

    如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

    本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
    如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。