更新记录

1.0.1(2020-05-14)

解决底部line跟选中颜色不同步问题

1.0.0(2020-04-29)

组件初始化,功能完成


平台兼容性

zzx-tabs

这是一个tab选项卡组件,可以自定义样式,并且可以在 tab项设置小圆点。组件名:zzx-tabs,代码块: zzxTbas。
注意: 组件样式使用了sass所有需要项目中先安装node-sass和sass-loader。

组件调用方式

在你需要使用的页面或者组件引入zzx-tabs,以下是完整功能的示例代码 eg:
template

<template>
    <view class="content">
        <view style="margin-top: 20upx;">
             <zzx-tabs :items="items" :current="current" @clickItem="onClickItem" ref="mytabs">
             </zzx-tabs>
        </view> 
        <view style="margin-top: 20upx;color:#999999;font-size: 24upx;height: 260upx;">
            <view v-show="current === 0">
                选项卡1的内容
            </view>
            <view v-show="current === 1">
                选项卡2的内容
            </view>
            <view v-show="current === 2">
                选项卡3的内容
            </view>
        </view>
        <view class="">
            <button type="primary" @click="setMydot">设置dot</button>
             <button type="default" @click="removeMydot">移除dot</button>
        </view> 
    </view>
</template>

script

    import zzxTabs from "@/components/zzx-tabs/zzx-tabs.vue"
    export default {
        components: {
            zzxTabs
        },
        data() {
            return {
                items: ['选项卡1','选项卡2','选项卡3'],
                current: 0
            };
        },
        methods: {
          onClickItem(e) {
            if (this.current !== e.currentIndex) {
                this.current = e.currentIndex;
            }
          },
          setMydot() {
              this.$refs.mytabs.setDot(0)
          }, 
          removeMydot() {
              this.$refs.mytabs.removeDot(0);
          }
        }
    }

组件属性说明 props

组件提供很多自定义属性,默认颜色, 选中颜色,底部线的高度,线与文字的距离等具体属性看下表:

属性名 数据类型 默认值 说明
items Array [] 选项数组,比如['选项1', '选项2']
current Number 0 当前选中项下标
defaultColor String '#999999' 选项默认字体颜色
activeColor String '#FF6633' 选项被选中字体颜色
tabHeight String '60upx' 文字部分的选项高度
lineHeight String '3px' 底部滑动线条的height
lineWidth String '40%' 底部滑动线条的宽度
lineTop String '0px' 底部滑动线条与文字的距离

事件说明

事件名 说明

@clickItem | 选项变化时触发

@clickItem 事件返回属性说明

 {currentIndex:1// 选中项下标}

实例方法

该组件内置了两个方法,分别用来设置tab项小圆点和移除小圆点 在使用组件的地方通过ref获取组件实例后,调用这两个方法

1. setDot() 设置圆点

  this.$refs.mytabs.setDot(0)

2. removeDot() 移除小圆点

  this.$refs.mytabs.removeDot(0)

以上两个方法需要传入一个参数,参数index为你需要设置或移除圆点选项的下标

TODO

  • [ ] 根据需要是否增加按钮类型的tab

联系

有问题可以在以下评论区评论,或者邮件wallowyou@outlook.com

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问