• vue中使用swiper的时候第二轮事件不会触发


    vue中使用swiper的时候第二轮事件不会触发

    首先说明导致这样的结果的原因:官方解释是轮播在循环轮播的时候他是前面复制一份后面复制一份,这样看起来就是无缝滚动,但是在复制的时候不会复制事件,所以会有事件不会触发

    解决这种有两种方法,第一种loopfalse,这样没有复制元素自然也不存在复制事件这一说法

    第二种重新写options
    第一步定义ref跟重新定义options
    在这里插入图片描述

    在这里插入图片描述
    data里面是不需要的

    • 计算属性里面写个事件swiper事件是原swiper自带的在点击的时候computed会自动监听跟watch差不多(缓存),然后让其指向我们当前使用的swiper让其有原生的方法,
    • swiper里面有个on属性 里面是绑定事件让其执行swiper方法,返回当前dom,常用的获取id的方式
      clickedSlide当前轮播dom
      activeIndexloop模式下注意该值会被加上复制的slide数
      realIndex与activeIndex不同的是,在loop模式下不会将复制的块的数量计算在内。
      常用获取的方法 其余看文档
      切记:最后要将optins返回 然后绑定值options
      computed: {
      
        swiper() {
          return this.$refs.mySwiper.swiper
        },
        swiperOption() {
          let option = {
            slidesPerView: 5,
            // height: 'auto',
            autoplay: {
              delay: 3000,
              stopOnLastSlide: false,
              /* 触摸滑动后是否继续轮播 */
              disableOnInteraction: false
            },
            spaceBetween: 1,
            // observer: true,//修改swiper自己或子元素时,自动初始化swiper
            // observeParents: true,//修改swiper的父元素时,自动初始化swiper 
            direction: "vertical", //设置垂直滚动方向
            speed: 800,//滚动速度
            grabCursor: true,
            loop: true,//循环滚动
            //这里进行事件处理
            on: {
              click: (swiper) => {
                console.log(this.date[this.swiper.clickedSlide.getAttribute('data-index')].userId);
                this.$store.commit("showDialog5", this.date[this.swiper.clickedSlide.getAttribute('data-index')].userId);
              },
            },
          }
          //这里要将配置返回出去
          return option 
        }
      },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    在这里插入图片描述

  • 相关阅读:
    Wordpress多语言插件:WPML插件使用教程,最佳的多语言建站方案
    软件开发流程
    完整的阿里云主机备案流程,看看耗时多少天
    分布式与一致性协议之PBFT算法(一)
    小米在B站,跟1500万年轻人聊了啥?
    【算法】算法基础课模板大全
    【Markdown】编辑器使用技巧大汇总1。CSDN如何使用Markdown编辑器?如何在CSDN中输入数学公式?数学公式中如何输入上标和下标?
    YOLOv8/5不显示FLPOs
    C++ day1
    【机器学习】9 ——最大熵模型的直观理解
  • 原文地址:https://blog.csdn.net/weixin_48255917/article/details/126579677