服了,记一下v-show不生效的问题
2023-12-15 12:20:51
背景:父组件有一个tab,切换tab就切换不同的子组件
<div class="h-full border border-color-basis p-16">
<ChartStyle v-show="state.checkedTab == '0'" :chartConfig="chartConfig" :drawBatteryTests="drawBatteryTests" />
<AxisAndScaleLines v-show="state.checkedTab == '1'" />
<Scale v-show="state.checkedTab == '2'" />
<Grid v-show="state.checkedTab == '3'" />
</div>
如上所示:通过v-show控制四个子组件的显示和隐藏,但是我加上去怎么都不生效,F12查看元素发现子组件并没有各自的父元素,而且也没有display:none这个样式(v-show底层是通过display:none控制元素的显示隐藏的)
结果真的是:由于我的子组件没有一个根节点,也就是在template区域直接就写了各个小部分的节点,没有一个大的div(这就可能造成各个小部分的display:flex和v-show的display:none造成冲突,导致v-show失效)?,直接在各个子组件加上根节点就可以了
所以,在快乐敲代码的过程中也需要注意代码的规则,不该省的千万不要省啊!!!!!还有就是注意属性display和v-show是否冲突
文章来源:https://blog.csdn.net/weixin_60886885/article/details/135011568
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!