鍍金池/ 問答/HTML/ vue+swiper不能輪播,不報(bào)錯(cuò),只顯示第一張圖

vue+swiper不能輪播,不報(bào)錯(cuò),只顯示第一張圖

clipboard.png
clipboard.png
clipboard.png

只顯示第一張圖片,不能輪播,沒有報(bào)錯(cuò)

回答
編輯回答
純妹

Vue項(xiàng)目使用swiper做輪播圖時(shí),異步調(diào)用數(shù)據(jù)時(shí)導(dǎo)致圖片不能滑動(dòng)的解決方法
因?yàn)閟wiper提前初始化了,那個(gè)時(shí)候還沒有數(shù)據(jù),當(dāng)數(shù)據(jù)調(diào)出來時(shí)已經(jīng)沒用了,所以有以下幾個(gè)解決方法:
1、在數(shù)據(jù)調(diào)用結(jié)束后再進(jìn)行swiper初始化

api.ajax({...}, function(...) {
    ... // 賦值代碼
    that.$nextTick(function () {
        that.swiperInit()
    })
})
這里還要用到$nextTick,它會(huì)在數(shù)據(jù)變化以后,DOM更新以后進(jìn)行回調(diào)函數(shù)

2、如果不是輪播的情況下呢,直接在初始化時(shí)加上observer

(修改swiper自己或子元素時(shí),自動(dòng)初始化swiper)、 observeParents

(修改swiper的父元素時(shí),自動(dòng)初始化swiper)這兩個(gè)參數(shù)就行了,會(huì)在數(shù)據(jù)變化時(shí),再幫你初始化一次

參考鏈接:http://www.cnblogs.com/DivHao...

2017年5月6日 08:52
編輯回答
孤島

你可以去看看這個(gè),可能對(duì)你有幫助。
observer

啟動(dòng)動(dòng)態(tài)檢查器(OB/觀眾/觀看者),當(dāng)改變swiper的樣式(例如隱藏/顯示)或者修改swiper的子元素時(shí),自動(dòng)初始化swiper。

var mySwiper = new Swiper('.swiper-container',{
pagination : '.swiper-pagination',
observer:true,
})
2017年8月2日 08:16