vue.js中的v-show为什么不起使用

本文通过实际项目经验,详细对比了Vue框架中v-if与v-show指令在控制元素显示隐藏方面的差异。特别是在处理日期选择器组件时,发现v-show在某些场景下可能不如v-if稳定有效,提供了宝贵的实践案例。
摘要由CSDN通过智能技术生成

近日做前后端分离项目,

前端vue+element ui;

有两个相似的页面,有1个下拉选框,值是年,月,日,用来控制后面日期选择器要显示选择年,选择月,选择日;

开始是使用v-show,在第一 个页面是没有问题的;

但是在第二个页面,v-show突然不起作用了;

这里贴一下图:

页面1:

-------------------------------------------

页面2:

----------------------------------------------

因为第二个页面选择日的时候,后面的日期选择器是选择日期区间的,有开始日期和结束日期,对于这个控制元素,v-show不起作用。

 

对vue有了解的同学都知道,控制页面元素显示隐藏的,除了v-show还有v-if;

这里看一下vue中v-if和v-show官方文档的介绍:

虽然也看不出来啥,但是使用v-if,就OK了。

问题解决了。

个人理解,可能是v-show对于元素渲染,只针对单个元素渲染,所以当日期选择框只有一个值的时候,是有效的;

但是日期选择变为期间的时候,表面上看其实是是两个元素值了,所以导致v-show 的css渲染失效。

以上只是个人猜测;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值