## Tab 标签 ### 使用指南 如果你已经按照快速上手中引入了整个`vant`,以下**组件注册**就可以忽略了,因为你已经全局注册了`vant`中的全部组件。 #### 全局注册 你可以在全局注册`Tab`组件,比如页面的主文件(`index.js`,`main.js`),这样页面任何地方都可以直接使用`Tab`组件了: ```js import Vue from 'vue'; import { Tab, Tabs } from 'vant'; import 'vant/lib/vant-css/tab.css'; Vue.component(Tab.name, Tab); Vue.component(Tabs.name, Tabs); ``` #### 局部注册 如果你只是想在某个组件中使用,你可以在对应组件中注册`Tab`组件,这样只能在你注册的组件中使用`Tab`: ```js import { Tab, Tabs } from 'vant'; import 'vant/lib/vant-css/tab.css'; export default { components: { 'van-tab': Tab, 'van-tabs': Tabs } }; ``` ### 代码演示 #### 基础用法 默认情况下是启用第一个`tab`。 :::demo 基础用法 ```html 内容一 内容二 内容三 内容四 ``` ::: #### active特定tab 可以在`van-tabs`上设置`active`为对应`tab`的索引(从0开始,即0代表第一个)即可激活对应`tab`,默认为0。 :::demo 基础用法 ```html 内容一 内容二 内容三 内容四 ``` ::: ### 设置切换tab的动画时间 通过设置`duration`来指定时间,默认为0.3s,只接受`Number`类型参数。 :::demo 设置切换tab的动画时间 ```html 内容一 内容二 内容三 ``` ::: #### 多于4个tab时 多于4个tab时,可以横向滚动tab。 :::demo 多于4个tab时 ```html 内容一 内容二 内容三 内容四 内容五 内容六 内容七 内容八 ``` ::: #### 禁用tab 在对应的`van-tab`上设置`disabled`属性即可,如果需要监听禁用事件,可以监听`disabled`事件。 :::demo 禁用tab ```html 内容一 内容二 内容三 内容四 ``` ::: #### card样式 `Tabs`目前有两种样式:`line`和`card`,默认为`line`样式,也就上面基础用法中的样式,你可以在`van-tabs`上设置`type`为`card`改为card样式。 :::demo card样式 ```html 内容一 内容二 内容三 内容四 ``` ::: #### 自定义样式 可以在`van-tabs`上设置对应的`class`,从而自定义某些样式。 :::demo 自定义样式 ```html 内容一 内容二 内容三 内容四 ``` ::: #### click事件 可以在`van-tabs`上绑定一个`click`事件,事件处理函数有一个参数,参数为对应`tab`在`tabs`中的索引。 :::demo click事件 ```html 内容一 内容二 内容三 内容四 ``` ::: ### van-tabs API | 参数 | 说明 | 类型 | 默认值 | 可选 | |-----------|-----------|-----------|-------------|-------------| | classtype | 两种UI | `string` | `line` | `line`, `card` | | active | 默认激活的tab | `string`, `number` | `0` | | | navclass | tabs的内部nav上的自定义classname | `string` | | | | duration | 切换tab的动画时间 | `number` | `0.3` | | | ### van-tab API | 参数 | 说明 | 类型 | 默认值 | 可选 | |-----------|-----------|-----------|-------------|-------------| | title | tab的标题 | `string` | | | | disabled | 是否禁用这个tab | `boolean` | `false` | | ### van-tabs Event | 事件名 | 说明 | 参数 | |-----------|-----------|-----------| | click | 某个tab点击事件 | index:点击的`tab`的索引 | | disabled | 某个tab禁用时点击事件 | index:点击的`tab`的索引 |