1.使用swiper:由于项目需要自动播放,swiper6自动播放一直无效,后发现需要改成swiper5。
版本分别为:"swiper": "^5.4.5","vue-awesome-swiper": "^4.1.1"。
nuxt.config.js:
image.png
image.png
nuxt-swiper-plugin.js:image.png
配置属性:
image.png
2.要实现的双向联动效果,点击左侧滑动到对应位置,滑动到某个位置,左侧对应模块选中:
image.png
遇到的问题:
image.png
一直为0。
通过这种方式:
image.png
获取的值也为0。
后发现:image.png
这种方式可以获取到值,但是在mounted中可以获取到,后续获取也一直为0。
实现代码:

handleScroll() { // 滑动监听

  let top = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop // 滚动条偏移量
  let scrollTop = top - this.topSet
  if (scrollTop >= this.topList[0] && scrollTop < this.topList[1]) {
    this.navIndex = 0
  } else if (scrollTop >= this.topList[1] && scrollTop < this.topList[2]) {
    this.navIndex = 1
  } else if (scrollTop >= this.topList[2]) {
    this.navIndex = 2
  } else if (scrollTop < this.topList[0]) {
    this.navIndex = -1
  }
  if (top > 50) {
    this.tellSign = true
  } else {
    this.tellSign = false
  }
},
jumpPage(index) {
  let PageId = this.topList[index];
  window.scrollTo({
    'top': PageId,
    'behavior': 'smooth'
  })
},

刘先生
14 声望0 粉丝