# Collapse 折叠面板
# 样例
点击以下按钮来显示或隐藏一些内容:
Hi there.
<template>
<div class="uiv">
<div>
<btn type="primary" @click="show = !show">Click me!</btn>
</div>
<br />
<collapse v-model="show">
<div class="well" style="margin-bottom: 0">Hi there.</div>
</collapse>
</div>
</template>
<script>
export default {
data() {
return {
show: false,
}
},
}
</script>
# 手风琴
通过拓展折叠面板来实现手风琴效果:
Collapsible Group Item #1
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus
terry richardson ad squid. 3 wolf moon officia aute, non cupidatat
skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.
Collapsible Group Item #2
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus
terry richardson ad squid. 3 wolf moon officia aute, non cupidatat
skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.
Collapsible Group Item #3
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus
terry richardson ad squid. 3 wolf moon officia aute, non cupidatat
skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.
<template>
<div class="panel-group uiv">
<div class="panel panel-default">
<div class="panel-heading" role="button" @click="toggleAccordion(0)">
<h4 class="panel-title">Collapsible Group Item #1</h4>
</div>
<collapse v-model="showAccordion[0]">
<div class="panel-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus
terry richardson ad squid. 3 wolf moon officia aute, non cupidatat
skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.
</div>
</collapse>
</div>
<div class="panel panel-default">
<div class="panel-heading" role="button" @click="toggleAccordion(1)">
<h4 class="panel-title">Collapsible Group Item #2</h4>
</div>
<collapse v-model="showAccordion[1]">
<div class="panel-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus
terry richardson ad squid. 3 wolf moon officia aute, non cupidatat
skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.
</div>
</collapse>
</div>
<div class="panel panel-info">
<div class="panel-heading" role="button" @click="toggleAccordion(2)">
<h4 class="panel-title">Collapsible Group Item #3</h4>
</div>
<collapse v-model="showAccordion[2]">
<div class="panel-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus
terry richardson ad squid. 3 wolf moon officia aute, non cupidatat
skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.
</div>
</collapse>
</div>
</div>
</template>
<script>
export default {
data() {
return {
showAccordion: [true, false, false],
}
},
methods: {
toggleAccordion(index) {
if (this.showAccordion[index]) {
this.$set(this.showAccordion, index, false)
} else {
this.showAccordion = this.showAccordion.map((v, i) => i === index)
}
},
},
}
</script>
# API 文档
# Collapse (opens new window)
# 参数
名字 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
v-model | Boolean | false | ✔ | 显示或隐藏 |
tag | String | div | 渲染使用的 HTML 标签 | |
transition | Number | 350 | 折叠动画速度,设置为 0 以禁用动画 |
# 插槽
名字 | 描述 |
---|---|
default | Replace as the collapse body. |
# 事件
名字 | 参数 | 描述 |
---|---|---|
show | 该事件会在 v-model 设置为 true 后立触发 | |
shown | 该事件会在折叠内容完全展示后触发(将等待动画结束) | |
hide | 该事件会在 v-model 设置为 false 后立触发 | |
hidden | 该事件会在折叠内容完全隐藏后触发(将等待动画结束) |