美文网首页
swiper5 和 vue-awesome-swiper4

swiper5 和 vue-awesome-swiper4

作者: 苍老师的眼泪 | 来源:发表于2022-03-21 21:50 被阅读0次

    安装(版本必须匹配):
    yarn add swiper@5
    yarn add vue-awesome-swiper@4

    main.js

    import VueAwesomeSwiper from 'vue-awesome-swiper'
    
    // import style
    import 'swiper/css/swiper.css'
    
    Vue.use(VueAwesomeSwiper, /* { default options with global component } */)
    
    <!-- The ref attr used to find the swiper instance -->
    <template>
      <div>
        <swiper :options="swiperOption" id="mySwiper" ref="mySwiper">
          <!-- slides -->
          <swiper-slide class="swiper_slide_item">I'm Slide 1</swiper-slide>
          <swiper-slide class="swiper_slide_item">I'm Slide 2</swiper-slide>
          <swiper-slide class="swiper_slide_item">I'm Slide 3</swiper-slide>
          <swiper-slide class="swiper_slide_item">I'm Slide 4</swiper-slide>
          <swiper-slide class="swiper_slide_item">I'm Slide 5</swiper-slide>
          <swiper-slide class="swiper_slide_item">I'm Slide 6</swiper-slide>
          <swiper-slide class="swiper_slide_item">I'm Slide 7</swiper-slide>
          <!-- Optional controls -->
          <div class="swiper-pagination" slot="pagination"></div>
        </swiper>
    
        <button @click="to(1)">Slide 1</button>
        <button @click="to(2)">Slide 2</button>
        <button @click="to(3)">Slide 3</button>
        <button @click="to(4)">Slide 4</button>
        <button @click="to(5)">Slide 5</button>
        <button @click="to(6)">Slide 6</button>
        <button @click="to(7)">Slide 7</button>
      </div>
    </template>
    
    <script>
    export default {
      name: "carrousel",
      data() {
        return {
          swiperOption: {
            pagination: {
              el: ".swiper-pagination",
              clickable: true, // 点击分页器跳切换到相应的幻灯片
            },
            loop: true,
            // speed: 1000, // 动画切换速度
            autoplay: {
              delay: 2000, // 幻灯片停留时间
              disableOnInteraction: false, // 用户操作swiper之后,是否禁止autoplay
              stopOnLastSlide: true, // 如果设置为true,当切换到最后一个slide时停止自动切换。(loop模式下无效)。
            },
            on: {
              slideChangeTransitionEnd: function () {
                console.log(this.activeIndex); //切换结束时,告诉我现在是第几个slide
              },
            },
          },
        };
      },
      computed: {
        swiper() {
          return this.$refs.mySwiper.$swiper;
        },
      },
      methods: {
        to(index) {
          this.swiper.slideTo(index - 1)
        }
      },
      mounted() {
        console.log(this.swiper);
      },
    };
    </script>
    
    <style lang="less">
    #mySwiper .swiper-wrapper {
      .swiper_slide_item.swiper-slide {
        height: 400px;
        background-color: coral;
      }
    }
    </style>
    

    相关文章

      网友评论

          本文标题:swiper5 和 vue-awesome-swiper4

          本文链接:https://www.haomeiwen.com/subject/zzptjrtx.html