Slider

轮播组件。

组件

Slider

<Slider> 组件,轮播容器。

Props

controls
PropType: bool

是否显示「上、下翻页」按钮,默认为 true

pager
PropType: bool

是否显示「分页圆点」按钮,默认为 true

interval
PropType: number

轮播间隔时间,默认为 5000(ms)。

autoPlay
PropType: bool

是否自动播放,默认为 true

loop
PropType: bool

是否循环播放,默认为 true

defaultActiveIndex
PropType: number

默认激活的幻灯片编号。

onAction
PropType: func

幻灯片切换后的回调函数,接受两个参数 (index, direction)index 为幻灯片编号,direction 为滚动方向。

Slider.Item

<Slider.Item> 组件,轮播子项。

Props

caption
PropType: node

幻灯片标题。

thumbnail
PropType: string

幻灯片缩略图 URL,设置 thumbnail 以后,分页圆点将替换为缩略图。

示例

  1. import React from 'react';
  2. import {
  3. Container,
  4. Group,
  5. Button,
  6. Slider,
  7. } from 'amazeui-touch';
  8. const onAction = function(index, direction) {
  9. console.log('激活的幻灯片编号:', index, ',滚动方向:', direction);
  10. };
  11. const sliderIntance = (
  12. <Slider
  13. onAction={onAction}
  14. >
  15. <Slider.Item>
  16. <img
  17. src="http://s.amazeui.org/media/i/demos/bing-1.jpg" />
  18. </Slider.Item>
  19. <Slider.Item><img
  20. src="http://s.amazeui.org/media/i/demos/bing-2.jpg" /></Slider.Item>
  21. <Slider.Item>
  22. <img
  23. src="http://s.amazeui.org/media/i/demos/bing-3.jpg" /></Slider.Item>
  24. <Slider.Item>
  25. <img
  26. src="http://s.amazeui.org/media/i/demos/bing-4.jpg" /></Slider.Item>
  27. </Slider>
  28. );
  29. const data = [
  30. {
  31. thumb: 'http://s.amazeui.org/media/i/demos/bing-1.jpg',
  32. img: 'http://s.amazeui.org/media/i/demos/bing-1.jpg'
  33. },
  34. {
  35. thumb: 'http://s.amazeui.org/media/i/demos/bing-2.jpg',
  36. img: 'http://s.amazeui.org/media/i/demos/bing-2.jpg'
  37. },
  38. {
  39. thumb: 'http://s.amazeui.org/media/i/demos/bing-3.jpg',
  40. img: 'http://s.amazeui.org/media/i/demos/bing-3.jpg'
  41. },
  42. {
  43. thumb: 'http://s.amazeui.org/media/i/demos/bing-4.jpg',
  44. img: 'http://s.amazeui.org/media/i/demos/bing-4.jpg'
  45. }];
  46. const data2 = [
  47. {
  48. img: 'http://s.amazeui.org/media/i/demos/bing-1.jpg',
  49. desc: '这是标题标题标题标题标题标题标题0'
  50. },
  51. {
  52. img: 'http://s.amazeui.org/media/i/demos/bing-2.jpg',
  53. desc: '这是标题标题标题标题标题标题标题1'
  54. },
  55. {
  56. img: 'http://s.amazeui.org/media/i/demos/bing-3.jpg',
  57. desc: '这是标题标题标题标题标题标题标题2'
  58. },
  59. {
  60. img: 'http://s.amazeui.org/media/i/demos/bing-4.jpg',
  61. desc: '这是标题标题标题标题标题标题标题3'
  62. }
  63. ];
  64. const sliderCaption = (
  65. <Slider>
  66. {data2.map(function(item, i) {
  67. return (
  68. <Slider.Item
  69. key={i}
  70. >
  71. <img src={item.img} />
  72. <div className="slider-caption">
  73. {item.desc}
  74. </div>
  75. </Slider.Item>
  76. );
  77. })}
  78. </Slider>
  79. );
  80. const sliderThumbs = (
  81. <Slider
  82. controls={false}
  83. >
  84. {data.map(function(item, i) {
  85. return (
  86. <Slider.Item
  87. key={i}
  88. thumbnail={item.thumb}
  89. >
  90. <img src={item.img} />
  91. </Slider.Item>
  92. );
  93. })}
  94. </Slider>
  95. );
  96. const SliderExample = React.createClass({
  97. render() {
  98. return (
  99. <Container {...this.props}>
  100. <Group
  101. header="默认"
  102. noPadded
  103. >
  104. {sliderIntance}
  105. </Group>
  106. <Group
  107. header="缩略图"
  108. noPadded
  109. >
  110. {sliderThumbs}
  111. </Group>
  112. <Group
  113. header="标题"
  114. noPadded
  115. >
  116. {sliderCaption}
  117. </Group>
  118. </Container>
  119. );
  120. }
  121. });
  122. export default SliderExample;

DemoCopy

Version: 1.0.0

原文: http://t.amazeui.org/#/docs/slider