更新记录

1.0.0(2024-08-22) 下载此版本

首次发布


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
app-vue × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

zero-tabs 组件

使用方法

符合easycom组件模式,使用 uni_modules 导入直接使用即可

参数说明

参数 类型 默认值 说明
tabs Array [] 传入数组, 数组元素中必须包含字段 name
currentIndex Number 0 当前选中项
backgroundColor String 'transparent' 背景颜色
height Number 80 组件高度,单位默认rpx
padding String '0 32rpx' 内边距
defaultColor String '#333333' 默认字体颜色
selectColor String '#0396FF' 选中项颜色
size Number 32 默认字号,默认rpx
customLineWidth Number 0 滑块宽度 默认px,默认px,默认px
autoJustify Boolean false 是否启用自动平均分布,当子元素宽度总和小于屏幕宽度时使用
needSticky Boolean false 是否启用吸顶
offsetTop Number 0 吸顶距离
fixedHolder Boolean true 吸顶时占位盒子
async Boolean false 是否启用异步
slider Boolean line 滑块类型: line , capsule , none
zIndex Number 1 z-index
capsuleOptions Object {} ,可不传 类型为胶囊的配置项,参考下方

capsuleOptions(胶囊模式配置项)

| 参数 | 类型 | 默认值 | 说明 | |height | Number | - | 自定义胶囊高度 | |radius | Number | - | 自定义胶囊圆角 | |color | Number | '#0396FF' | 自定义胶囊颜色 |

emits

参数 返回值
change (index, item)

使用示例

<template>
    <view class="tabs">
        <div class="zero-nav-title">基础使用</div>
        <!-- <div class="section"> -->
        <zero-tabs :currentIndex="currentIndex" :tabs="categoryList" @change="handleTabsChange" />
        <!-- </div> -->
        <div class="zero-nav-title">胶囊模式(需要自定义selectColor)</div>
        <div class="section">
            <zero-tabs :currentIndex="currentIndex" :tabs="categoryList" @change="handleTabsChange" slider="capsule"
                selectColor="#ffffff" />
        </div>
        <div class="zero-nav-title">无滑块</div>
        <div class="section">
            <zero-tabs :currentIndex="currentIndex" :tabs="categoryList" @change="handleTabsChange" slider="none" />
        </div>
        <div class="zero-nav-title">自定义颜色</div>
        <div class="section">
            <zero-tabs :currentIndex="currentIndex" :tabs="categoryList" @change="handleTabsChange"
                selectColor="#465CFF" defaultColor="#999999" />
        </div>
        <div class="zero-nav-title">自定义背景色</div>
        <div class="section">
            <zero-tabs :currentIndex="currentIndex" :tabs="categoryList" @change="handleTabsChange"
                backgroundColor="#eeeeee" />
        </div>

        <div class="zero-nav-title">禁用选项</div>
        <div class="section">
            <zero-tabs :currentIndex="currentIndex" :tabs="categoryList" @change="handleTabsChange"
                backgroundColor="#eeeeee" />
        </div>
    </view>
</template>

<script setup lang="ts">
import { ref } from "vue";

const handleTabsChange = (index: number) => {
    currentIndex.value = index;
};
const currentIndex = ref(0);
const categoryList = ref([
    { name: "推荐" },
    { name: "手机数码" },
    { name: "家用电器", disabled: true },
    { name: "电脑办公" },
    { name: "家居家装" },
    { name: "美妆个护" },
    { name: "服饰鞋包" },
    { name: "母婴童装" },
    { name: "图书音像" },
    { name: "房产汽车" },
    { name: "生鲜水果" },
    { name: "其他" },
]);

</script>

<style lang="scss" scoped>
.tabs {}

.zero-nav-title {
    margin: 50rpx 0 20rpx 20rpx;
}
</style>

插件预览: code

小程序搜索: zerojs 零技术

预览的小程序不一定能及时更新当前插件

隐私、权限声明

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

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

插件不采集任何数据

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

许可协议

MIT协议

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