UNPKG

uview-pro

Version:

uView Pro,是全面支持Vue3的uni-app生态框架,70+精选组件已使用TypeScript重构,已全面支持uni-app Vue3.0

52 lines (49 loc) 2.52 kB
import type { ExtractPropTypes, PropType } from 'vue'; import type { TabsItem } from '../../types/global'; /** * TabsProps tabs标签 props 类型定义 * @description 标签组件,支持横向滚动、滑块、徽标等 */ export const TabsProps = { /** tabs是否可以左右拖动 */ isScroll: { type: Boolean, default: true }, /** 标签数组 */ list: { type: Array as PropType<Array<TabsItem>>, default: () => [] }, /** 当前活动tab的索引 */ current: { type: [Number, String] as PropType<number | string>, default: 0 }, /** 导航栏的高度和行高 */ height: { type: [String, Number] as PropType<number | string>, default: 80 }, /** 字体大小 */ fontSize: { type: [String, Number] as PropType<number | string>, default: 30 }, /** 过渡动画时长, 单位s */ duration: { type: [String, Number] as PropType<number | string>, default: 0.5 }, /** 选中项的主题颜色 */ activeColor: { type: String, default: '#2979ff' }, /** 未选中项的颜色 */ inactiveColor: { type: String, default: '#303133' }, /** 菜单底部移动的bar的宽度,单位rpx */ barWidth: { type: [String, Number] as PropType<number | string>, default: 40 }, /** 移动bar的高度 */ barHeight: { type: [String, Number] as PropType<number | string>, default: 6 }, /** 单个tab的左右内边距之和,单位rpx */ gutter: { type: [String, Number] as PropType<number | string>, default: 30 }, /** 导航栏的背景颜色 */ bgColor: { type: String, default: '#ffffff' }, /** 读取传入的数组对象的属性(tab名称) */ name: { type: String, default: 'name' }, /** 读取传入的数组对象的属性(徽标数) */ count: { type: String, default: 'count' }, /** 徽标数位置偏移 */ offset: { type: Array as unknown as PropType<[number, number]>, default: () => [5, 20] }, /** 活动tab字体是否加粗 */ bold: { type: Boolean, default: true }, /** 当前活动tab item的样式 */ activeItemStyle: { type: Object as PropType<Record<string, any>>, default: () => ({}) }, /** 是否显示底部的滑块 */ showBar: { type: Boolean, default: true }, /** 底部滑块的自定义样式 */ barStyle: { type: Object as PropType<Record<string, any>>, default: () => ({}) }, /** 标签的宽度 */ itemWidth: { type: [String, Number] as PropType<number | string>, default: 'auto' } }; export type TabsProps = ExtractPropTypes<typeof TabsProps>;