动态加载swiper,默认显示最后一个swiper-slide怎么办

自己遇到的一个问题

 

 

VUE动态加载完成后显示最后一个,没找到原因不知道为什么

用了一个别人折中的方法

操作DOM更改了transform3d初始值

代码如下

复制代码
    // 获得学段信息
    getPeriods () {
      let data = {
        subject: this.selectPeriodNum
      }
      this.$axios({
        method: 'GET',
        url: '/api/app/v1/get_live_courses_type',
        params: data,
        headers: {
          'sign': this.$encryption(data, this.$store.state.token, this.$store.state.uid)
        }
      })
        .then(res => {
          console.log(res)
          this.periodData = res.data.data
          this.$nextTick(() => { // 下一帧渲染
            this.nav2Swiper()
            this.setSwiperInit()
          })
        })
        .catch(err => { console.log(err) })
    },




    nav2Swiper () {
      this.nav2SwiperOb = new Swiper('#nav2 .swiper-container', {
        initialSlide: 0,
        slidesPerView: 5,
        // spaceBetween: '4.27%',
        observer: true, // 修改swiper自己或子元素时,自动初始化swiper
        observeParents: true, // 修改swiper的父元素时,自动初始化swiper
        slideShadows: true
      })
    },
    setSwiperInit () {
      setTimeout(() => {
        document.getElementsByClassName('swiper-wrapper')[0].style.transform = 'translate3d(0px, 0px, 0px)'
      }, 50)
    }
复制代码

使用

 

setTimeout(() => {
        document.getElementsByClassName('swiper-wrapper')[0].style.transform = 'translate3d(0px, 0px, 0px)'
      }, 50)
初始化
posted @   鳳舞九天  阅读(3425)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示