UNPKG

gtht-miniapp-sdk

Version:

gtht-miniapp-sdk 是一套基于 Uniapp + Vue3 框架开发的兼容多端的 UI 组件库

114 lines (73 loc) 4.06 kB
--- nav: 组件 title: Tabs subtitle: 标签页 group: 导航组件 --- ## 介绍 选项卡切换组件。 ## 引入 ```ts import Tabs from 'gtht-miniapp-sdk/components/tabs/tabs.vue' import Tab from 'gtht-miniapp-sdk/components/tab/tab.vue' ``` ## 代码演示 ### 基础使用 通过 `v-model:current` 绑定当前激活标签对应的索引值,默认情况下启用第一个标签。 @code('${DEMO_PATH}/tabs/demo/Basic.vue') ### 可滚动标签栏 设置 `scrollable` 后标签不再平分空间,并且可以实现水平滚动。 @code('${DEMO_PATH}/tabs/demo/Scrollable.vue') ### 禁用标签 禁用的标签无法手动选择。 @code('${DEMO_PATH}/tabs/demo/Disabled.vue') ### 药丸类型 设置 `type="pill"` 可以让标签显示为药丸风格。 @code('${DEMO_PATH}/tabs/demo/Pill.vue') ### 卡片类型 设置 `type="card"` 可以让标签显示为卡片风格。 @code('${DEMO_PATH}/tabs/demo/Card.vue') ### 自定义标签 除了通过 `list` 属性设置标签内容,还可以通过组件的方式自由地渲染任何内容。 @info 如果通过组件的方式渲染,必须设置 `name` 属性来代替默认的下标。 @endinfo @code('${DEMO_PATH}/tabs/demo/CustomTab.vue') ## API ### TabsProps | 属性 | 描述 | 类型 | 默认值 | | ----------------- | ----------------------------------------- | -------------------------- | ------ | | root-class | 组件根元素类名 | string | - | | root-style | 组件根元素样式 | StyleValue | - | | current (v-model) | 当前选中的标签的 `name`,默认为标签的下标 | number \| string | - | | list | 标签数组,会被默认插槽覆盖 | TabProps[] | - | | type | 标签类型 | 'line' \| 'pill' \| 'card' | 'line' | | scrollable | 是否可滚动 | boolean | false | ### TabsSlots | 插槽 | 描述 | 属性 | | ------- | -------------- | ---- | | default | 自定义默认内容 | - | ### TabsEmits | 事件 | 描述 | 类型 | | ------------------------- | ------------------------ | ------------------------------------------- | | update:current | 当前激活的标签改变时触发 | (name: string \| number \| boolean) => void | | change <sup>1.12.2+</sup> | 当前激活的标签改变时触发 | (name: string \| number\| boolean) => void | ### TabProps / TabOption | 属性 | 描述 | 类型 | 默认值 | | ---------- | ---------------------------------------------------------- | -------------------------- | ------ | | root-class | 组件根元素类名 | string | - | | root-style | 组件根元素样式 | StyleValue | - | | title | 标签显示的标题 | string | - | | name | 标签的唯一标识,默认为对应的下标,使用标签组件时要手动指定 | string \| number\| boolean | - | | disabled | 是否禁用标签 | boolean | false | ### TabSlots | 插槽 | 描述 | 属性 | | ------- | -------------- | ---- | | default | 自定义默认内容 | - | ### TabEmits | 事件 | 描述 | 类型 | | ----- | ---------------------------- | -------------------- | | click | 点击标签时触发,不论是否禁用 | (event: any) => void | ## 主题定制 ### CSS 变量 @code('./variables.scss#variables')