1.使用swiper:由於專案需要自動播放,swiper6自動播放一直無效,後發現需要改成swiper5。
版本分別為:"swiper": "^5.4.5","vue-awesome-swiper": "^4.1.1"。
nuxt.config.js:
nuxt-swiper-plugin.js:
設定屬性:
2.要實現的雙向聯動效果,點選左側滑動到對應位置,滑動到某個位置,左側對應模組選中:
遇到的問題:
一直為0。
通過這種方式:
獲取的值也為0。
後發現:
這種方式可以獲取到值,但是在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'
})
},