import { TaScrollTab, TaGroup, ScrollTabOnChange } from '@/index'
const offsetTop = 52
const offsetBottom = 12
export default function ExpScrollTab() {
const onChange: ScrollTabOnChange = res => {
console.log('change', res)
}
return (
<>
<TaGroup title="基础用法">
<TaScrollTab
className="exp-scrollTab-boxs"
stickyOffsetTop={offsetTop}
stickyOffsetBottom={offsetBottom}
onChange={onChange}
>
<TaScrollTab.Item name="Dust Red">
<div className="exp-scrollTab-box box-1"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Volcano">
<div className="exp-scrollTab-box box-2"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Sunset Orange">
<div className="exp-scrollTab-box box-3"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Calendula Gold">
<div className="exp-scrollTab-box box-4"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Sunrise Yellow">
<div className="exp-scrollTab-box box-5"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Lime">
<div className="exp-scrollTab-box box-6"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Polar Green">
<div className="exp-scrollTab-box box-7"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Cyan">
<div className="exp-scrollTab-box box-8"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Daybreak Blue">
<div className="exp-scrollTab-box box-9"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Geek Blue">
<div className="exp-scrollTab-box box-10"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Golden Purple">
<div className="exp-scrollTab-box box-11"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Magenta">
<div className="exp-scrollTab-box box-12"></div>
</TaScrollTab.Item>
</TaScrollTab>
</TaGroup>
</>
)
}
Import
import { TaScrollTab, TaScrollTabItem } from 'tantalum-ui-mobile-react'
具体的引入方式可以参考引入组件。
Import Type
组件导出的类型定义:
import type { ScrollTabOnChange, ScrollTabRef } from 'tantalum-ui-mobile-react'
属性 | 类型 | 默认值 | 必填 | 说明 |
---|
stickyOffsetTop | string | number | 0 | 否 | 数值默认是 px,也支持 vw/vh |
stickyOffsetBottom | string | number | 0 | 否 | 数值默认是 px,也支持 vw/vh |
事件 | 描述 | 回调函数参数 | TypeScript 函数 |
---|
onChange | 切换时触发 | (name: string, activeIndex: number) | ScrollTabOnChange |
children
注:其中只可放置 ScrollTabItem 组件,否则会导致未定义的行为。
<TaScrollTab className="exp-scrollTab-boxs">
<TaScrollTab.Item name="Dust Red">
<div className="exp-scrollTab-box box-1"></div>
</TaScrollTab.Item>
<TaScrollTab.Item name="Volcano">
<div className="exp-scrollTab-box box-2"></div>
</TaScrollTab.Item>
</TaScrollTab>
Methods
interface ScrollTabRef {
scrollTo: (name: string) => void
scrollToIndex: (index: number) => void
}
方法名 | 说明 |
---|
scrollTo | 切换到指定 name 的 Item |
scrollToIndex | 切换到指定 index 的 Item |
属性 | 类型 | 默认值 | 必填 | 说明 |
---|
name | string | | 是 | 唯一标识,设置后配合 ScrollTab 组件的 value 和 onChange 使用 |
title | string | | 否 | 分组名,也应用于吸附,如果没有设置则获取 name 的值 |
children
<TaScrollTab.Item name="Dust Red">
<div className="exp-scrollTab-box box-1"></div>
</TaScrollTab.Item>