Tabs 标签页
将属于不同类型但彼此相关的数据集合分区展示。
基础用法
简洁的基础标签页。
标签页提供可选卡片式切换能力。默认选中第一个标签为激活状态,你也可以通过设置 value 属性来激活任意标签。
User
User
Config
Role
Task
卡片样式
卡片样式的标签页。
将 type 设置为 card 即可获得卡片样式。
User
User
Config
Role
Task
边框卡片
带边框的卡片式标签页。
将 type 设置为 border-card。
User
Config
Role
Task
标签位置
可使用 tab-position 属性设置标签所在位置。
可从四个方向中选择:tabPosition="left|right|top|bottom"
User
Config
Role
Task
自定义标签
可使用具名插槽自定义标签标题内容。
Route
Config
Role
Task
新增与关闭标签
仅卡片类型标签页支持新增与关闭。
Tab 2 content
Tab 1
Tab 2
自定义新增按钮图标
Tab 2 content
Tab 1
Tab 2
自定义新增标签的触发按钮
Tab 2 content
Tab 1
Tab 2
默认值
default-value: third
active:
active:
User
Config
Role
Task
标签页 API
标签页 属性
| 名称 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| model-value / v-model | 绑定值,选中标签的名称;默认值为第一个标签的名称 | string / number | — |
| default-value | 初次渲染时应激活的标签值(可避免初始过渡动画) | string / number | — |
| type | 标签页类型 | enum | '' |
| closable | 标签是否可关闭 | boolean | false |
| addable | 标签是否可新增 | boolean | false |
| editable | 标签是否同时可新增和关闭 | boolean | false |
| tab-position | 标签栏位置 | enum | top |
| stretch | 标签宽度是否自动撑满容器 | boolean | false |
| before-leave | 切换标签前的钩子;若返回 false,或返回 Promise 且被拒绝,则阻止切换 | Function | () => true |
| tabindex | 标签页的 tabindex | string / number | 0 |
标签页 事件
| 名称 | 说明 | 参数 |
|---|---|---|
| tab-click | 点击标签时触发 | Function |
| tab-change | activeName 改变时触发 | Function |
| tab-remove | 点击标签移除按钮时触发 | Function |
| tab-add | 点击标签新增按钮时触发 | Function |
| edit | 点击标签新增或移除按钮时触发 | Function |
标签页 插槽
| 名称 | 说明 | 子标签 |
|---|---|---|
| default | 自定义默认内容 | Tab-pane |
| add-icon | 自定义新增按钮图标 | — |
标签页 暴露
| 名称 | 说明 | 类型 |
|---|---|---|
| currentName | 当前激活面板名称 | object |
| tabNavRef | 标签导航组件实例 | object |
标签导航 API
标签导航 暴露
| 名称 | 说明 | 类型 |
|---|---|---|
| scrollToActiveTab | 滚动到当前激活标签 | Function |
| removeFocus | 移除聚焦状态 | Function |
| tabListRef | el_tabs__nav DOM | object |
| tabBarRef | el_tabs__nav 指示条实例 | object |
标签条 API
标签条 暴露
| 名称 | 说明 | 类型 |
|---|---|---|
| ref | 标签条根 DOM 元素 | object |
| update | 手动更新标签条样式,返回更新后的样式对象 | Function |
标签面板 API
标签面板 属性
| 名称 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| label | 标签标题 | string | '' |
| disabled | 是否禁用该标签 | boolean | false |
| name | 与 Tabs 的 name 对应的标识,表示该 tab-pane 的别名;默认按顺序为序号,例如第一个 tab-pane 为 '0' | string / number | — |
| closable | 标签是否可关闭 | boolean | false |
| lazy | 标签是否延迟渲染 | boolean | false |
标签面板 插槽
| 名称 | 说明 |
|---|---|
| default | Tab-pane 内容 |
| label | Tab-pane 标题 |
常见问题
如何实现可排序 / 可拖拽的标签页?
我们暴露了实现该能力所需的信息,你可以自行实现。 也可以使用原生方式,参考 示例。 或使用 SortableJs,参考 示例。