AvueAvue
首页
  • 开发指南
  • Skill开发
  • 在线测试工具
  • Form组件
  • Crud组件
  • Default组件
  • Data组件
  • Component组件
产品
工作台
授权
联系
2.x文档
个人支付接口
首页
  • 开发指南
  • Skill开发
  • 在线测试工具
  • Form组件
  • Crud组件
  • Default组件
  • Data组件
  • Component组件
产品
工作台
授权
联系
2.x文档
个人支付接口
  • Article 文章
  • Group 分组容器
  • Title 标题文本
  • CountUp 数字动画
  • Comment 评论
  • Chat 客服聊天
  • Captcha 验证码
  • Contextmenu 右键菜单
  • Clipboard 复制文本
  • DialogForm 弹窗表单
  • Draggable 拖拽
  • Export Excel 导入与导出
  • Flow 流程
  • FilterBuilder 高级筛选
  • FileManager 文件管理
  • QRCode 二维码
  • Iframe 嵌入页面
  • ImagePreview 图片预览
  • Login 登录组件
  • License 授权书
  • Print 打印
  • Screenshot 页面截图
  • Search 标签搜索
  • Sign 电子签名
  • TextEllipsis 超出文本省略
  • Tabs 选项卡
  • Tree 树型
  • Video 摄像头
  • Calendar 日历组合示例

Tabs 选项卡

avue-tabs 按 option.column 渲染标签栏,适合切换表单、表格或自定义内容。当前组件不提供内容面板,内容由业务在组件外按当前选项渲染。

切换与自定义标签

效果预览可直接操作下方示例

change 返回整个列配置对象。首次渲染默认选中下标 0,不会主动触发 change,因此示例将当前内容初始化为第一列。

正在加载示例…
<template>
  <avue-tabs ref="tabs" :option="option" @change="active = $event">
    <template #label="{ column, active: selected }">
      <span :style="{ fontWeight: selected ? 600 : 400 }">{{ column.label }}</span>
    </template>
  </avue-tabs>
  <el-alert :title="`${active.label}:${active.description}`" :closable="false" />
  <el-button class="tabs-demo-button" @click="tabs?.changeTabs(1)">通过实例切换到配置说明</el-button>
</template>

<script setup>
import { ref } from 'vue'

const tabs = ref(null)
const option = {
  column: [
    { label: '基础信息', prop: 'basic', description: '内容由组件外的当前列状态渲染。' },
    { label: '配置说明', prop: 'settings', description: 'change 回调返回当前列对象。' },
    { label: '暂不可用', prop: 'disabled', disabled: true, description: '' }
  ]
}
// 初次渲染不触发 change,因此主动初始化第一列。
const active = ref(option.column[0])
</script>

<style scoped>
.tabs-demo-button { margin-top: 12px; white-space: normal; height: auto; min-height: 32px; }
</style>

Props 与 Option

参数说明类型默认值
option必填的选项卡配置object{}
option.column标签数组,每项的 prop 应唯一array[]
option.position标签位置,透传给 Element Plus TabsstringElement Plus 默认值
option.type标签样式,支持 card、border-card;不传为普通样式string—
column.prop唯一标识,用于业务判断和渲染 keystring—
column.label / icon标签文字 / 图标string—
column.disabled禁止用户切换到该标签booleanfalse

组件内部通过数组下标记录当前标签,不支持 v-model。动态调整 column 顺序后,请重新确定要激活的下标。

Events

事件说明参数
change激活下标变化后触发;切换到相同下标不会重复触发当前 column 对象

Methods

方法参数说明
changeTabsindex: number 或数字字符串通过 ref 切换标签;传入有效且未禁用的列下标

Slots

名称说明参数
label自定义每个标签的内容{ column, index, active },active 为当前标签是否激活
最后更新:
贡献者: smallwei
Prev
TextEllipsis 超出文本省略
Next
Tree 树型