Tabs 标签页

用于让用户在不同的视图中进行切换。

规则

  • 标签数量,一般 2-4 个;其中,标签中的文案需要精简,一般 2-4 个字。

  • 在 iOS 端的次级页面中,不建议使用左右滑动来切换 Tab,这个和 iOS 的左滑返回存在冲突,eg:详情页中 Tabs。

代码演示

选项卡

多用于页面的内容区块,起着控制小范围内的大块内容的分组和隐藏,起着保持界面整洁的作用。

  1. import { Tabs, WhiteSpace } from 'antd-mobile';
  2. const TabPane = Tabs.TabPane;
  3. function callback(key) {
  4. console.log(key);
  5. }
  6. const TabExample = React.createClass({
  7. render() {
  8. return (
  9. <div>
  10. <Tabs defaultActiveKey="1" onChange={callback}>
  11. <TabPane tab="选项卡一" key="1">
  12. <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', height: '2rem' }}>
  13. 选项卡一内容
  14. </div>
  15. </TabPane>
  16. <TabPane tab="选项卡二" key="2">
  17. <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', height: '2rem' }}>
  18. 选项卡二内容
  19. </div>
  20. </TabPane>
  21. <TabPane tab="选项卡三" key="3">
  22. <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', height: '2rem' }}>
  23. 选项卡三内容
  24. </div>
  25. </TabPane>
  26. </Tabs>
  27. <WhiteSpace />
  28. </div>
  29. );
  30. },
  31. });
  32. ReactDOM.render(<TabExample />, mountNode);

无动画

禁用切换动画效果

  1. import { Tabs, WhiteSpace } from 'antd-mobile';
  2. const TabPane = Tabs.TabPane;
  3. function callback(key) {
  4. console.log(key);
  5. }
  6. const TabExample = React.createClass({
  7. render() {
  8. return (
  9. <div>
  10. <WhiteSpace />
  11. <Tabs defaultActiveKey="1" animated={false} onChange={callback}>
  12. <TabPane tab="选项卡一" key="1">
  13. <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', height: '2rem' }}>
  14. 选项卡一内容
  15. </div>
  16. </TabPane>
  17. <TabPane tab="选项卡二" key="2">
  18. <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', height: '2rem' }}>
  19. 选项卡二内容
  20. </div>
  21. </TabPane>
  22. <TabPane tab="选项卡三" key="3">
  23. <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', height: '2rem' }}>
  24. 选项卡三内容
  25. </div>
  26. </TabPane>
  27. </Tabs>
  28. <WhiteSpace />
  29. </div>
  30. );
  31. },
  32. });
  33. ReactDOM.render(<TabExample />, mountNode);

Tabs标签页 - 图1

API ( 适用平台:WEB、React-Native )

Tabs

参数说明类型默认值
activeKey当前激活 tab 面板的 keyString
defaultActiveKey初始化选中面板的 key,如果没有设置 activeKeyString第一个面板
onChange切换面板的回调(key: string): void
onTabClicktab 被点击的回调(key: string): void
animated是否动画booleantrue
swipeable是否可以滑动 tab 内容进行切换booleantrue
tabBarPositiontab 位置 top/bottomstringtop
destroyInactiveTabPane是否销毁掉不活动的 tabPane (优化使用)booleanfalse
underlineColor(react-native only)线条颜色string#ddd
activeUnderlineColor(react-native only)选中线条颜色string#108ee9
textColor(react-native only)文字颜色string#000
activeTextColor(react-native only)选中文字颜色string#108ee9

Tabs.TabPane

参数说明类型默认值
key对应 activeKeyString
tab选项卡头显示文字React.Element or String