Skip to content

Collapse 折叠面板

通过折叠面板收纳内容区域

基础用法

可同时展开多个面板,面板之间不影响

Consistency
Consistent with real life: in line with the process and logic of real life, and comply with languages and habits that the users are used to;
Consistent within interface: all elements should be consistent, such as: design style, icons and texts, position of elements, etc.
Feedback
Efficiency
Controllability
<template>
  <div class="demo-collapse">
    <vk-collapse v-model="activeNames" @change="handleChange">
      <vk-collapse-item title="Consistency" name="1">
        <div>
          Consistent with real life: in line with the process and logic of real
          life, and comply with languages and habits that the users are used to;
        </div>
        <div>
          Consistent within interface: all elements should be consistent, such
          as: design style, icons and texts, position of elements, etc.
        </div>
      </vk-collapse-item>
      <vk-collapse-item title="Feedback" name="2">
        <div>
          Operation feedback: enable the users to clearly perceive their
          operations by style updates and interactive effects;
        </div>
        <div>
          Visual feedback: reflect current state by updating or rearranging
          elements of the page.
        </div>
      </vk-collapse-item>
      <vk-collapse-item title="Efficiency" name="3">
        <div>
          Simplify the process: keep operating process simple and intuitive;
        </div>
        <div>
          Definite and clear: enunciate your intentions clearly so that the
          users can quickly understand and make decisions;
        </div>
        <div>
          Easy to identify: the interface should be straightforward, which helps
          the users to identify and frees them from memorizing and recalling.
        </div>
      </vk-collapse-item>
      <vk-collapse-item title="Controllability" name="4">
        <div>
          Decision making: giving advice about operations is acceptable, but do
          not make decisions for the users;
        </div>
        <div>
          Controlled consequences: users should be granted the freedom to
          operate, including canceling, aborting or terminating current
          operation.
        </div>
      </vk-collapse-item>
    </vk-collapse>
  </div>
</template>

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

import {NameType} from "xb-element/dist/types/components/Collapse/type";

const activeNames = ref(['1'])
const handleChange = (val: NameType) => {
  console.log(val)
}
</script>

手风琴效果

每次只能展开一个面板

通过 accordion 属性来设置是否以手风琴模式显示。

Consistency
Consistent with real life: in line with the process and logic of real life, and comply with languages and habits that the users are used to;
Consistent within interface: all elements should be consistent, such as: design style, icons and texts, position of elements, etc.
Feedback
Efficiency
Controllability
<template>
  <div class="demo-collapse">
    <vk-collapse v-model="activeNames" @change="handleChange" accordion>
      <vk-collapse-item title="Consistency" name="1">
        <div>
          Consistent with real life: in line with the process and logic of real
          life, and comply with languages and habits that the users are used to;
        </div>
        <div>
          Consistent within interface: all elements should be consistent, such
          as: design style, icons and texts, position of elements, etc.
        </div>
      </vk-collapse-item>
      <vk-collapse-item title="Feedback" name="2">
        <div>
          Operation feedback: enable the users to clearly perceive their
          operations by style updates and interactive effects;
        </div>
        <div>
          Visual feedback: reflect current state by updating or rearranging
          elements of the page.
        </div>
      </vk-collapse-item>
      <vk-collapse-item title="Efficiency" name="3">
        <div>
          Simplify the process: keep operating process simple and intuitive;
        </div>
        <div>
          Definite and clear: enunciate your intentions clearly so that the
          users can quickly understand and make decisions;
        </div>
        <div>
          Easy to identify: the interface should be straightforward, which helps
          the users to identify and frees them from memorizing and recalling.
        </div>
      </vk-collapse-item>
      <vk-collapse-item title="Controllability" name="4">
        <div>
          Decision making: giving advice about operations is acceptable, but do
          not make decisions for the users;
        </div>
        <div>
          Controlled consequences: users should be granted the freedom to
          operate, including canceling, aborting or terminating current
          operation.
        </div>
      </vk-collapse-item>
    </vk-collapse>
  </div>
</template>

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

import {NameType} from "xb-element/dist/types/components/Collapse/type";

const activeNames = ref(['1'])
const handleChange = (val: NameType) => {
  console.log(val)
}
</script>

Collapse API

Collapse Attribute

属性名详情类型默认值
model-value / v-model当前活动面板,其类型是arrayarray[]
accordion是否手风琴模式booleanfalse

Collapse Events

事件名说明类型
change切换当前活动面板,其类型是arrayFunction

Collapse Slots

插槽名描述子标签
default自定义默认内容Collapse Item

Collapse Exposes

方法名说明类型
activeNames当前活动的面板array
handleItemClick设置活动面板Function

Collapse Item API

Collapse Item Attributes

属性名详情类型默认值
name唯一标志符stringnumber
title面板标题string''
disabled是否禁用booleanfalse

Collapse Item Slot

名称说明类型
defaultCollapse Item 的内容-