v-show 不能用在template
# template标签:隐形的容器
- 不会渲染成真实DOM:浏览器最终呈现的页面中完全看不到它的存在
- 支持结构化指令:完美配合v-if、v-for等逻辑控制
- 可包裹多个元素:解决单个根元素的限制
<template>
<div>元素A</div>
<div>元素B</div>
</template>
1
2
3
4
2
3
4
渲染结果
<div>元素A</div>
<div>元素B</div>
1
2
2
# v-show指令:优雅的显隐开关
- 通过display: none控制显隐
- 初始渲染成本较高(需要真实DOM)
- 适合频繁切换的场景
v-show
必须作用于真实存在的DOM元素,才能直接操作其样式属性。
# 解决方法
- 套个 div
- 使用 v-if
- CSS选择器
.hidden-group > * {
display: none !important;
}
<div class="hidden-group">
<div>内容A</div>
<div>内容B</div>
</div>
1
2
3
4
5
6
7
2
3
4
5
6
7
最近更新时间: 2025/05/09 08:29:19
- 01
- 2025/05/05 00:00:00
- 02
- 2025/05/01 00:00:00
- 03
- 2025/03/15 00:00:00