- 在终端安装依赖包
npm install swiper vue-awesome-swiper --save
- 在main.js文件中导入需要的包
import VueAwesomeSwiper from 'vue-awesome-swiper'
import 'swiper/css/swiper.css'
//注册轮播图插件
Vue.use(VueAwesomeSwiper)
3.创建轮播图插件
<template>
<swiper ref="mySwiper" :options="swiperOptions">
<swiper-slide><img src="/img/1.jpg" alt=""></swiper-slide>
<swiper-slide><img src="/img/2.jpg" alt=""></swiper-slide>
<swiper-slide><img src="/img/3.jpg" alt=""></swiper-slide>
<swiper-slide><img src="/img/4.jpg" alt=""></swiper-slide>
<swiper-slide><img src="/img/5.jpg" alt=""></swiper-slide>
<div class="swiper-pagination" slot="pagination"></div>
</swiper>
</template>
<script>
export default {
name: "carrousel",
data() {
return {
swiperOptions: {
loop: true,
autoplay: {
delay: 1000,
stopOnLastSlide: false,
// 禁止交互的值设置为false,就可以交互
disableOnInteraction: false,
},
pagination: {
el: ".swiper-pagination",
},
// Some Swiper option/callback...
},
};
},
computed: {
swiper() {
return this.$refs.mySwiper.$swiper;
},
},
mounted() {
console.log("Current Swiper instance object", this.swiper);
//this.swiper.slideTo(1, 1000, false)
},
};
</script>
<style scoped>
img{
width: 100%;
height: 100%;
}
.swiper-container {
width: 800px;
height: 550px;
background-color: red;
}
</style>
- 在主组件App.vue中引入子组件
<template>
<div id="app">
<slidepicture></slidepicture>
</div>
</template>
<script>
import slidepicture from "./components/slideshow.vue"
export default {
name: 'App',
components: {
slidepicture,
}
}
</script>
<style>
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
</style>