Skip to content

H5预览

APP下载

Collapse 折叠面板

折叠面板组件用于展示和隐藏内容区域,支持平滑的展开收起动画效果,常用于 FAQ、详情展示等场景。

基础参数

参数说明类型可选值默认值
pt样式穿透配置,用于自定义组件样式PassThrough--
modelValue控制折叠面板的展开/收起状态boolean-false

方法

方法名说明参数
show展开状态-
hide收起状态-
toggle切换展开/收起状态-

PassThrough

样式穿透配置允许您自定义组件内部各个元素的样式,实现更灵活的外观定制。

参数说明类型
className组件根元素样式string

示例

基础用法

通过 v-model 绑定展开状态,实现双向数据绑定:

html
<cl-button @click="toggle">{{ visible ? '收起' : '展开' }}</cl-button>

<cl-collapse v-model="visible">
  <cl-text>
    云想衣裳花想容,春风拂槛露华浓,若非群玉山头见,会向瑶台月下逢。
  </cl-text>
</cl-collapse>

<script lang="ts" setup>
  import { ref } from "vue";

  const visible = ref(false);

  function toggle() {
    visible.value = !visible.value;
  }
</script>

ref 方式调用

通过组件引用直接调用方法控制展开状态:

html
<cl-button @click="toggle">切换状态</cl-button>

<cl-collapse ref="collapseRef">
  <cl-text>
    云想衣裳花想容,春风拂槛露华浓,若非群玉山头见,会向瑶台月下逢。
  </cl-text>
</cl-collapse>

<script lang="ts" setup>
  import { ref } from "vue";

  // 注意:类型必须为 ClCollapseComponentPublicInstance | null,默认值不能省略
  const collapseRef = ref<ClCollapseComponentPublicInstance | null>(null);

  function toggle() {
    collapseRef.value?.toggle();
  }
</script>