首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
v-if 和 v-show 的区别、原理与典型使用场景。
[问答题]
v-if 和 v-show 的区别、原理与典型使用场景。
添加笔记
求解答(0)
邀请回答
收藏(5)
分享
纠错
5个回答
添加回答
0
鱿雨稀
v-if会在切换过程中对条件块的事件监听器和子组件进行销毁和重建,如果初始条件是false,则什么都不用做,直到第一次条件为true时才会开始渲染模块。v-show只是在基于css层面进行切换,不管初始条件是什么都会渲染,相比v-if更适合用在经常切换的场景
发表于 2025-11-27 00:02:20
回复(0)
0
我从未看清
区别及原理:最大的区别就是v-if是控制组件的创建与销毁 v-show 是增加display:none css样式 进行显示和隐藏,本质上组件还在 使用场景: v-if : 是否要渲染某个功能模块,主要还是运行条件很少改变使用v-if, 条件不成立时 组件销毁,不需要进行加载,可以提升进入页面的速度,用户体验更好 v-show: 频繁切换,高频需要切换的ui元素,对于组件时如果不是高频切换,就不用 v-show ,因为v-show不会销毁组件,切换页面时,组件还存在,浪费性能,使得页面加载速度过慢,会 降低用户体验
发表于 2025-11-24 16:05:19
回复(0)
0
emmarhao
v-if:通过创建、销毁元素达到元素的显示和隐藏。 v-show:通过css的display显示和隐藏元素节点。 在频繁切换元素显示隐藏时,使用v-show更合适,如果只有一次创建和销毁使用v-if。
发表于 2025-11-20 09:58:40
回复(0)
0
tzone
v-if是通过新增或删除DOM元素来控制显示隐藏,切换开销大,可以搭配v-else、v-else-if按条件渲染,v-show是通过display属性来控制显示隐藏,切换时开销小。无类似v-else搭配指令。频繁切换推荐使用v-show, 但有些业务场景是根据权限来,则需要使用v-if,避免用户通过浏览器调试工具修改display属性,看到没权限的界面。
发表于 2025-09-27 18:43:56
回复(0)
0
还是想躺平的追梦人很想回学校
v-if:真正的条件渲染,直接操作DOM树的元素(通过动态创建/销毁 DOM 元素和组件),v-show:通过display:none,控制显示/隐藏元素,当切换频率低推荐使用v-if:高的话使用v-show
发表于 2025-09-17 16:07:12
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
来自:
Vue-牛客面经八股
难度:
5条回答
5收藏
223浏览
热门推荐
相关试题
权限路由的动态生成与菜单联动。
评论
(0)
来自
Vue-牛客面经八股
keep-alive 的缓存策略、...
评论
(2)
来自
Vue-牛客面经八股
Vue 项目跨页面传参与持久化的常...
评论
(0)
来自
Vue-牛客面经八股
如何让某个组件“强制重新渲染”,代...
评论
(2)
来自
Vue-牛客面经八股
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题