swiper 滑动切换请使用手机扫码体验
常用于一组图片或卡片轮播,当内容空间不足时,可以用走马灯的形式进行收纳,进行轮播展现。
基本用法
横向无缝切换
- html
<nut-swiper
:paginationVisible="true"
direction="horizontal"
ref="demo1"
>
<div v-for="(item,index) in dataItem" :key="index" class="nut-swiper-slide">
<span>page{{item.name}}</span>
</div>
</nut-swiper>
横向切换
- html
<nut-swiper
direction="horizontal"
ref="demo2"
:canDragging="false"
:paginationVisible="true"
>
<div v-for="(item,index) in dataItem" :key="index" class="nut-swiper-slide">
<span>page{{item.name}}</span>
</div>
</nut-swiper>
横向循环切换
- html
<nut-swiper
direction="horizontal"
ref="demo3"
:loop="true"
:canDragging="false"
:paginationVisible="true"
>
<div class="nut-swiper-slide gray" >
<span>page 1</span>
</div>
<div class="nut-swiper-slide gray_1" >
<span>page 2</span>
</div>
<div class="nut-swiper-slide gray" >
<span>page 3</span>
</div>
<div class="nut-swiper-slide gray_1" >
<span>page 4</span>
</div>
</nut-swiper>
纵向自动播放
- html
<nut-swiper
direction="vertical"
ref="dem4"
:autoPlay="3000"
id="dome4"
>
<div class="nut-swiper-slide gray" >
<span>page 1</span>
</div>
<div class="nut-swiper-slide gray_1" >
<span>page 2</span>
</div>
<div class="nut-swiper-slide gray" >
<span>page 3</span>
</div>
<div class="nut-swiper-slide gray_1" >
<span>page 4</span>
</div>
</nut-swiper>
滑动懒加载图片
- html
<nut-swiper
direction="horizontal"
ref="demo4"
:lazyLoad="true"
:paginationVisible="true"
>
<div v-for="(item,index) in dataImgItem" :key="index" class="nut-swiper-slide ">
<img :data-src="item.imgSrc" style="max-width:100%; max-height:100%" class="nut-img-lazyload"/>
</div>
</nut-swiper>
- javascript
export default{
data(){
return{
dataItem:null,
dataImgItem:[],
}
},
mounted(){
setTimeout(()=>{
this.dataItem = [{
name:1
},{
name:2
},{
name:3
},{
name:4
}]
this.dataImgItem = [
{
imgSrc:'//m.360buyimg.com/mobilecms/s843x843_jfs/t19441/80/1577112624/568821/1ee9b683/5ad064f1Nf41a94b4.jpg'
},
{
imgSrc:'//m.360buyimg.com/mobilecms/s843x843_jfs/t16798/338/1617130854/542623/4c197f4d/5ad064f1Nce5f69e2.jpg'
},
{
imgSrc:'//m.360buyimg.com/mobilecms/s843x843_jfs/t22123/348/720079801/233727/23c4c0a4/5b162d64Nc5883413.jpg'
},
{
imgSrc:'//m.360buyimg.com/mobilecms/s843x843_jfs/t1/27233/9/354/82863/5c090a0eEe2a350d8/aaa6686ce133e364.jpg'
}
];
this.$refs.demo1.updateEvent(1);
this.$refs.demo2.updateEvent();
this.$refs.demo4.updateEvent();
},300)
}
}
Prop
字段 | 说明 | 类型 | 默认值 |
---|---|---|---|
direction | 滑动方向 | String | vertical |
paginationVisible | 是否分页显示 | Boolean | false |
paginationClickable | 分页是否可以点击 | Boolean | false |
loop | 是否循环 | Boolean | false |
speed | 过度动画执行时间 | Number | 500 |
canDragging | 是否无缝切换 | Boolean | true |
autoPlay | 自动轮播,轮播默认是循环模式,直接写轮播间隔时间 | Number | 0 |
initPage | 设置初始时候显示的页 | Number | 1 |
lazyLoad | 是否懒加载图片 | Boolean | false |
lazyLoadUrl | 懒加载的默认展示图片 | String | - |
Methods
字段 | 说明 | 参数 |
---|---|---|
next | 去下一页 | - |
prev | 去上一页 | - |
setPage | 设置当前显示第几页 | number |
updateEvent | 异步数据渲染slide,都需要重新调用方法,绑定事件,如【横向无缝滑动】this.$ref.demo1.update(1)。也提供设置初始页面 | number |
Events
字段 | 说明 | 回调参数 |
---|---|---|
slideChangeStart | 页面开始切换时候 | pageSize,el |
slideChangeEnd | 页面结束切换时候 | pageSize,el |
slideRevertStart | 拖动页面没改变回到原先位置开始时候 | pageSize,el |
slideRevertEnd | 拖动页面没有改变回到原先位置结束时候 | pageSize,el |
slideMove | 拖动过程中 | offset,el |