使用vue-awesome-swiper做异形轮播图

先上效果图

在这里插入图片描述

刚开始对着swiper官网自己摸索,引入swiper依赖启动,当然是直接报错,然后百度各种文章,是版本问题导致报错,后来用vue-awesome-swiper来做这个轮播。我用的是3.1.3的vue-awesome-swiper

第一步

npm install vue-awesome-swiper@3 --save-dev

然后就是最重要的一点 引入文件 这一步了

第二步

import { swiper, swiperSlide } from 'vue-awesome-swiper'
import 'vue-awesome-swiper/node_modules/swiper/dist/css/swiper.css'

引入css文件这一步,建议顺着node_modules插件包的路径,一不小心就是引入错误

第三步

使用vue-awesome-swiper是要用组件方式引入

components: {  swiper, swiperSlide },

使用

<swiper class="mySwiper" :options="swiperOption" ref="mySwiper">
              <!-- 添加的图片 -->
              <swiper-slide >
                <img class="swiper-slide" src="../../../assets/visualizationFrame/111.jpg" />
              </swiper-slide>
              
              <swiper-slide >
                <img class="swiper-slide" src="../../../assets/visualizationFrame/111.jpg" />
              </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>
export default {
  components: {  swiper, swiperSlide },
  data() {
    return {
      swiperOption: {
        grabCursor: true,
        //可见图片张数
        slidesPerView: 2,
        // 默认选中中间一张
        centeredSlides: true,
        //无限循环
        loop: true,
        //小圆点(我此处没使用,列出供参考)
        pagination: {
          el: '.swiper-pagination',
          clickable: true,
        },
        // pagination: '.swiper-pagination',
        //自动轮播
        autoplay: {
          delay: 5000,
          stopOnLastSlide: false,
        },
        //上下按钮点击轮播效果
        navigation: {
          nextEl: '.swiper-button-next',
          prevEl: '.swiper-button-prev',
        },
        // notNextTick: true,
        slideToClickedSlide: true,
        on: {
          click: function () {
          //需要注意的是:this 指向的是 swpier 实例,而不是当前的 vue, 因此借助 vm,来调用 methods 里的方法
            const realIndex = this.realIndex
            // 当前活动块的索引,与activeIndex不同的是,在loop模式下不会将 复制的块 的数量计算在内
            //点击可以手动切换轮播图
            vm.$refs.mySwiper.swiper.slideTo(realIndex, 300, false)
          },
        },
        //  direction: 'horizontal',
        //  spaceBetween: 4, // 在slide之间设置距离 也可以是百分比 10%
        //  centeredSlides: true, // 默认选中中间一张
        // observer: true, // 修改swiper自己或子元素时,自动初始化swiper
        // observeParents: true, // 修改swiper的父元素时,自动初始化swiper
      },
    }
  },
  mouted() {
  },
  created() {
    vm = this
  },
  methods: {},
}

总结

不能瞎抄

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue-awesome-swiper是一个用于Vue.js的强大轮插件。它基于Swiper.js库,并提供了易于使用和高度可定制的组件来创建各种类型的轮。 要使用vue-awesome-swiper,您需要首先安装它。您可以在终端中运行以下命令来安装: ``` npm install vue-awesome-swiper --save ``` 安装完成后,在您的Vue组件中引入并注册vue-awesome-swiper。例如: ```javascript import Vue from 'vue' import VueAwesomeSwiper from 'vue-awesome-swiper' // import样式 import 'swiper/css/swiper.css' // 在Vue中使用插件 Vue.use(VueAwesomeSwiper /* { default options with global component } */) ``` 现在,您可以在您的Vue模板中使用vue-awesome-swiper组件来创建轮了。以下是一个简单的例子: ```html <template> <div> <swiper :options="swiperOptions"> <swiper-slide v-for="(item, index) in items" :key="index"> <img :src="item.imageUrl" alt="Slide Image"> </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> </div> </template> <script> export default { data() { return { items: [ { imageUrl: 'path/to/image1.jpg' }, { imageUrl: 'path/to/image2.jpg' }, { imageUrl: 'path/to/image3.jpg' } ], swiperOptions: { // Swiper.js的选项 // 例如:autoplay: true } } } } </script> ``` 在上面的例子中,我们使用`<swiper>`标签来包裹轮的内容,并使用`<swiper-slide>`标签来定义每个轮项。您可以根据自己的需求添加其他选项,如分页器、前进/后退按钮等。 这只是一个简单的示例,您可以根据自己的需求进行更多的定制和样式调整。您可以查阅vue-awesome-swiper的文档以获得更多详细信息和示例代码。祝您成功使用vue-awesome-swiper创建漂亮的轮

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值