今天做vue的輪播功能,然后遇到了很大的坑,首先是最新版的插件是基于swiper4.相比swiper5及其難用。導(dǎo)致弄了很久才排除大坑
最值得一提的是,在手動(dòng)去化輪播圖時(shí),會(huì)報(bào)錯(cuò):

最后在網(wǎng)上找到一個(gè)解決方案:去swiper的js文件中搜索 e.preventDefault() 然后將其屏蔽即可。
接下來說說在vue中如何使用。當(dāng)然,具體的參考swiper4官方文檔!

因?yàn)椴恢挂粋€(gè)組件使用到iswiper,所以定義到全局
在組件中就直接粘貼代碼了:
<!-- The ref attr used to find the swiper instance -->
<template>
<swiper :options="swiperOption" ref="mySwiper" @someSwiperEvent="callback">
<!-- slides -->
<swiper-slide>I'm Slide 1</swiper-slide>
<swiper-slide>I'm Slide 2</swiper-slide>
<swiper-slide>I'm Slide 3</swiper-slide>
<swiper-slide>I'm Slide 4</swiper-slide>
<swiper-slide>I'm Slide 5</swiper-slide>
<swiper-slide>I'm Slide 6</swiper-slide>
<swiper-slide>I'm Slide 7</swiper-slide>
<!-- Optional controls -->
<div class="swiper-pagination" slot="pagination"></div>
<div class="swiper-button-prev" slot="button-prev"></div>
<div class="swiper-button-next" slot="button-next"></div>
<div class="swiper-scrollbar" slot="scrollbar"></div>
</swiper>
</template>
<script>
export default {
name: 'carrousel',
data() {
return {
swiperOption: {
// some swiper options/callbacks
// 所有的參數(shù)同 swiper 官方 api 參數(shù)
// ...
}
}
},
computed: {
swiper() {
return this.$refs.mySwiper.swiper
}
},
mounted() {
// current swiper instance
// 然后你就可以使用當(dāng)前上下文內(nèi)的swiper對(duì)象去做你想做的事了
console.log('this is current swiper instance object', this.swiper)
this.swiper.slideTo(3, 1000, false)
}
}
</script>