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={{
  13. display: 'flex', alignItems: 'center', justifyContent: 'center', height: 100,
  14. }}>
  15. 选项卡一内容
  16. </div>
  17. </TabPane>
  18. <TabPane tab="选项卡二" key="2">
  19. <div style={{
  20. display: 'flex', alignItems: 'center', justifyContent: 'center', height: 100,
  21. }}>
  22. 选项卡二内容
  23. </div>
  24. </TabPane>
  25. <TabPane tab="选项卡三" key="3">
  26. <div style={{
  27. display: 'flex', alignItems: 'center', justifyContent: 'center', height: 100,
  28. }}>
  29. 选项卡三内容
  30. </div>
  31. </TabPane>
  32. </Tabs>
  33. <WhiteSpace />
  34. </div>
  35. );
  36. },
  37. });
  38. 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={{
  14. display: 'flex', alignItems: 'center', justifyContent: 'center', height: 100,
  15. }}>
  16. 选项卡一内容
  17. </div>
  18. </TabPane>
  19. <TabPane tab="选项卡二" key="2">
  20. <div style={{
  21. display: 'flex', alignItems: 'center', justifyContent: 'center', height: 100,
  22. }}>
  23. 选项卡二内容
  24. </div>
  25. </TabPane>
  26. <TabPane tab="选项卡三" key="3">
  27. <div style={{
  28. display: 'flex', alignItems: 'center', justifyContent: 'center', height: 100,
  29. }}>
  30. 选项卡三内容
  31. </div>
  32. </TabPane>
  33. </Tabs>
  34. <WhiteSpace />
  35. </div>
  36. );
  37. },
  38. });
  39. ReactDOM.render(<TabExample />, mountNode);

Tabs标签页 - 图1

API

Tabs

参数说明类型默认值
activeKey当前激活 tab 面板的 keyString
defaultActiveKey初始化选中面板的 key,如果没有设置 activeKeyString第一个面板
onChange切换面板的回调Function
onTabClicktab 被点击的回调Function
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