码迷,mamicode.com
首页 > 其他好文 > 详细

vue中使用原生swiper

时间:2020-01-13 18:16:22      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:parent   als   code   url   new   delay   ott   ref   v-for   

<template>
    <div>
        <div class="swiper_Box" :class="identify">
            <div class="swiper-wrapper" :ref="identify">
                <div class="swiper-slide" v-for="(item,index) in imgArr" :key="‘swiperSlide‘+index">
                    <div class="bannerItem">
                        <img :src="item.url" alt="">
                    </div>
                </div>
            </div>
            <!-- <div v-if="imgArr.length>1" class="swiper-button-prev" slot="button-prev"></div>
            <div v-if="imgArr.length>1" class="swiper-button-next" slot="button-next"></div> -->
            <div class="swiper-pagination"></div>
        </div>
    </div>
</template>

<script>
export default {
    props:[imgArr,identify,paginationType],//接收传来的轮播图
    watch:{
       imgArr:{
           handler(newVal){
               console.log(newVal)
           },
           immediate:true
       },
       identify:{
            handler(newVal){
                console.log("id:"+newVal)
                var self=this;
            },
           immediate:true 
       }
    },
    data(){
        return{
            swiperShow:false,
            MySwiper:null,//swiper实例
        }
    },
    created(){
    },
    mounted(){
        var self=this;
        self.MySwiper = new Swiper (.+self.identify,{
            init: true,
            observer:true,
            observeParents:true,
            slidesPerView: 1,
            spaceBetween: 0,
            keyboard: {
                enabled: true,
            },
            loop: true,
            autoplay: {
                delay: 8000,
                disableOnInteraction: false
            },
            pagination: {
                el: .swiper-pagination,
                clickable: true,
                type:self.paginationType?self.paginationType:bullets
            },
            navigation: {
                nextEl: .swiper-button-next,
                prevEl: .swiper-button-prev
            },
        });
    }
}
</script>

<style scoped>
@import url("../styles/swiperBullet.css");
/* 轮播图 */
.swiperBox{
    width:100%;
}
.swiper_Box{
    position: relative;
    overflow: hidden;
}
.swiper_Box .bannerItem img{
    height:auto;
    width:100%;
}
.swiperBox .bannerItem{
    width:100%;
    text-align: center;
}
.swiperBox .bannerItem img{
    height:auto;
    width:100%;
}
.swiper-pagination{
    position: absolute;
    bottom:20px;
    left:50%;
    transform: translateX(-50%);
}

</style>

swiper的引入形式是link标签引入样式

script标签引入js

vue中使用原生swiper

标签:parent   als   code   url   new   delay   ott   ref   v-for   

原文地址:https://www.cnblogs.com/fqh123/p/12188231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!