요구 사항 설명: 개발 중에 페이지에 캐러셀 이미지가 있는 경우가 많습니다. 캐러셀 이미지를 데이터와 연결해야 하는 경우가 있지만 캐러셀 페이지를 가져오는 방법에는 몇 가지 함정이 있습니다.
1. 먼저 swiper 플러그인을 설치해야 합니다.
npm 설치 vue-awesome-swiper --save-dev
2. 사용하기 전에 main.js에 전역 참조 추가
'vue-awesome-swiper'에서 VueAwesomeSwiper 가져오기
import 'swiper/dist/css/swiper.css'
Vue.use(VueAwesomeSwiper )
3. 페이지에서 사용
<swiper :options="swiperOption" ref="mySwiper3">
<swiper-slide>
<div class="biaoCharts" ref="biaoCharts"></div>
</swiper-slide>
<swiper-slide>
<div class=" biaoCharts" ref="biaoCharts2"></div>
</swiper-slide>
<!-- <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> -->
</swiper>
4. 데이터에서
swiperOption: {
loop: false,
autoplay:false,
observer: true, //修改swiper自己或子元素时,自动初始化swiper
observeParents: true, //修改swiper的父元素时,自动初始化swiper
on: {
slideChange: function () {
console.log(this.realIndex); // -> 这里的this指的是Swiper的this对象,不是vue的,所以要将VUe的this对象声明vm指向vue实例,这里就是轮播图的切换下标
vm.SwiperIndex=this.realIndex
console.log(vm.SwiperIndex);
}
},
autoplay: {
delay: 3000,
stopOnLastSlide: false,
disableOnInteraction: false,
},
// 显示分页
pagination: {
el: ".swiper-pagination",
clickable: true, //允许分页点击跳转
},
// 设置点击箭头
navigation: {
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev",
},
},
5. vm 변수를 전역으로 선언
<script>
var vm = null
</script>
6. vue 인스턴스 객체가 vm을 가리키도록 create에서 선언합니다.
created() {
//完成swiperOption点击事件的vm指向vue实例
vm = this;
},
7. 마지막으로 필요에 따라 스타일을 수정합니다.