Slider 组件用于在一个页面中展示多个图片,在前端这种效果被称为轮播图。默认的轮播间隔为3秒。
子组件
支持任意类型的 jsn 组件作为其子组件。你也可以放置一个 indicator 组件用于显示轮播指示器。indicator 也只能作为 Slider 的子组件使用。
属性
- auto-play, boolean: 组件渲染完成时,是否自动开始播放,默认为 false。
- interval, number(ms): 轮播间隔,默认为 3000ms。
- index, number:设置显示slider的第几个页面。
- offset-x-accuracy, number: 控制 onscroll事件触发的频率,默认值为10,表示两次onscroll事件之间滚动容器至少滚动了10px。将该值设置为较小的数值会提高滚动事件采样的精度,但同时也会降低页面的性能。
- show-indicators, boolean:是否显示指示器。
- infinite, boolean: 设置是否可以无限轮播,默认为 true。
- scrollable, boolean: 设置是否可以通过滑动手势来切换页面,默认为 true。
- keep-index, boolean, Android:设置轮播器中的数据发生变化后是否保持变化前的页面序号。
- forbid-slide-animation, boolean, v0.7+ & iOS: iOS 平台默认支持动画,使用该属性可以强制关闭切换时的动画。
样式
事件
- 通用事件 支持所有通用事件。
- change 当轮播索引改变时,触发该事件。
- scroll, v0.11+ 列表发生滚动时将会触发该事件。
示例
| <template><div>
 <slider class="slider" interval="3000" auto-play="true">
 <div class="frame" v-for="img in imageList">
 <image class="image" resize="cover" :src="img.src"></image>
 </div>
 </slider>
 </div>
 </template>
 
 <style scoped>
 .image {
 width: 700px;
 height: 700px;
 }
 .slider {
 margin-top: 25px;
 margin-left: 25px;
 width: 700px;
 height: 700px;
 border-width: 2px;
 border-style: solid;
 border-color: #41B883;
 }
 .frame {
 width: 700px;
 height: 700px;
 position: relative;
 }
 </style>
 
 <script>
 export default {
 data () {
 return {
 imageList: [
 { src: 'https://gd2.alicdn.com/bao/uploaded/i2/T14H1LFwBcXXXXXXXX_!!0-item_pic.jpg'},
 { src: 'https://gd1.alicdn.com/bao/uploaded/i1/TB1PXJCJFXXXXciXFXXXXXXXXXX_!!0-item_pic.jpg'},
 { src: 'https://gd3.alicdn.com/bao/uploaded/i3/TB1x6hYLXXXXXazXVXXXXXXXXXX_!!0-item_pic.jpg'}
 ]
 }
 }
 }
 </script>
 
 |