Skip to content

Tab 标签页

介绍

选项卡组件,用于在不同的内容区域之间进行切换。

基础用法

通过 v-model 绑定当前选中的标签的索引,默认激活第一项。

html
<vd-tabs v-model="active">
  <vd-tab title="标签1">标签内容1</vd-tab>
  <vd-tab title="标签2">标签内容2</vd-tab>
  <vd-tab title="标签3">标签内容3</vd-tab>
</vd-tabs>
ts
const active = ref(0);

名称匹配

通过 name 属性设置标签页的名称时,v-model 的值为绑定当前选中的标签名称。

html
<vd-tabs v-model="active">
  <vd-tab title="标签1" name="1">标签内容1</vd-tab>
  <vd-tab title="标签2" name="2">标签内容2</vd-tab>
  <vd-tab title="标签3" name="3">标签内容3</vd-tab>
</vd-tabs>
ts
const active = ref('1');

收缩布局

通过 shrink 属性设置标签页为收缩布局。

html
<vd-tabs v-model="active" shrink>
  <vd-tab title="标签1" name="1">标签内容1</vd-tab>
  <vd-tab title="标签2" name="2">标签内容2</vd-tab>
  <vd-tab title="标签3" name="3">标签内容3</vd-tab>
</vd-tabs>
ts
const active = ref('1');

指示线条宽度

通过 line-width 属性设置指示线条的宽度,设置为 'auto' 时,根据选中项自动设置线条的宽度。

html
<vd-tabs v-model="active" :shrink="true" line-width="auto">
  <vd-tab title="标签1" name="1">标签内容1</vd-tab>
  <vd-tab title="标签2" name="2">标签内容2</vd-tab>
  <vd-tab title="标签3" name="3">标签内容3</vd-tab>
</vd-tabs>
ts
const active = ref('1');

切换动画

通过 animated 属性开启/关闭标签页之间的切换动画。

html
<vd-tabs v-model="active" animated>
  <vd-tab title="标签1" name="1">标签内容1</vd-tab>
  <vd-tab title="标签2" name="2">标签内容2</vd-tab>
  <vd-tab title="标签3" name="3">标签内容3</vd-tab>
</vd-tabs>
ts
const active = ref('1');

滑动切换

通过 swipeable 属性开启/关闭标签页之间的滑动切换。

html
<vd-tabs v-model="active" swipeable>
  <vd-tab title="标签1" name="1">标签内容1</vd-tab>
  <vd-tab title="标签2" name="2">标签内容2</vd-tab>
  <vd-tab title="标签3" name="3">标签内容3</vd-tab>
</vd-tabs>
ts
const active = ref('1');

API

Tabs Props

参数说明类型默认值
v-model选中值string | number0
shrink是否收缩布局boolean-
animated是否开启标签内容切换动画boolean-
duration动画时间,设置为 0 时禁用动画string | number500
line-width指示线条宽度,设置 'auto' 时自动根据选项设置宽度string | number40
swipeable是否开启标签页之间的滑动切换boolean-
before-swipe左右滑动前回调,返回 false 阻止滑动TabsBeforeSwipe-
lazy-render是否首次切换到标签时才触发内容渲染booleantrue
update-on-view当组件出现在视图时,是否自动触发更新事件booleantrue

Tab Props

参数说明类型默认值
title标题string-
name标签名称,作为匹配的标识符string | number-
disabled是否禁用标签boolean-
lazy-render是否首次切换到标签时才触发内容渲染boolean-

代替原始 Props

参数说明类型默认值
custom-id根节点idstring-
custom-class根节点类名ClassValue-
custom-style根节点样式StyleValue-

Tabs Events

事件名说明回调参数
click点击时触发MouseEvent
click-tab点击标签项时触发TabsOnClickTabEvent
change标签切换时触发TabsItem

Tab Events

事件名说明回调参数
click点击时触发MouseEvent

Tabs Slots

名称说明
default标签项内容
nav标签导航内容

Tab Slots

名称说明
default自定义内容

Tabs Expose

方法名说明参数返回值
update手动触发标签线条、滚动位置计算--

赣ICP备2025061025号-1