Skip to content

v-tab

介绍

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

预览

tab

引入

方式请参考组件用法

代码演示

基础用法

通过 v-model:active 绑定当前激活标签对应的索引值,默认情况下启用第一个标签。

js
<v-tabs v-model:active="active">
  <v-tab title="标签 1">内容 1</v-tab>
  <v-tab title="标签 2">内容 2</v-tab>
  <v-tab title="标签 3">内容 3</v-tab>
  <v-tab title="标签 4">内容 4</v-tab>
</v-tabs>

js
import { ref } from 'vue';

export default {
  setup() {
    const active = ref(0);
    return { active };
  },
};

监听切换事件

设置 change 方法来监听切换导航项时的事件。

js
<v-tabs v-model:active="active" @change="onChange">
  <v-tab title="标签 1">内容 1</v-tab>
  <v-tab title="标签 2">内容 2</v-tab>
  <v-tab title="标签 3">内容 3</v-tab>
  <v-tab title="标签 4">内容 4</v-tab>
</v-tabs>

js
export default {
    setup() {
        const onChange = (index) => {
            console.log(`tab index ${index + 1}`)
        }
        return {
            onChange,
        };
    },
};

API

Tabs Props

参数说明类型默认值
active当前导航项的索引number0
config支持全部v-group属性object-
duration动画时间,单位秒,设置为 0 可以禁用动画number0
activeModetab 激活方式'enter'/'none''none'
styleMixactivefocus是否共存booleanfalse
focused焦点是否在Tab区域内(辅助styleMix)booleanfalse
  L fill背景颜色String-
  L padding内部paddingnumber0
  L cornerRadius圆角Number0
  L fillLinearGradientStartPoint线性渐变起点Object<{x:0,y:0}>-
  L fillLinearGradientEndPoint线性渐变结束点Object<{x:0,y:100}>-
  L fillLinearGradientColorStops线性渐变颜色停止Array<[0, '#FEF0D6', 1, '#FEE2C1']>-

Tabs Events

事件名说明回调参数
change切换导航项时触发index: number
rendered标签内容首次渲染时触发index: number

Tab Props

参数说明类型默认值
title标题string''
badge图标右上角徽标的内容numberstring
config支持全部v-rect属性object--
  L fill默认字体颜色string#000000
  L focusColor落焦字体颜色string#000
  L activeColor激活字体颜色string#f00
  L focusBackground落焦背景颜色string''
  L activeBackground激活背景颜色string''
  L focusStyle落焦字体样式normal bold italicnormal
  L activeStyle激活字体样式normal bold italicnormal

Tab Solts

参数说明
badge徽标