摘要:基于的移動(dòng)端的圖片輪播組件之前一直在用功能很齊全但是唯一的問題就是體積比較大我只是想要一個(gè)簡(jiǎn)單的圖片輪播但是卻要引入多大小的文件這樣是不對(duì)的特點(diǎn)支持自動(dòng)播放無(wú)限輪播效果支持用戶手動(dòng)滑動(dòng)壓縮后大概使用在入口文件中引入暫時(shí)不支持單組
wc-swiper
基于 Vue 的移動(dòng)端的圖片輪播組件.
why之前一直在用 vue-awesome-swiper, 功能很齊全, 但是唯一的問題就是體積比較大.
我只是想要一個(gè)簡(jiǎn)單的圖片輪播, 但是卻要引入 100多k 大小的文件, 這樣是不對(duì)的.
支持自動(dòng)播放 & 無(wú)限輪播 (loop) 效果
支持用戶手動(dòng)滑動(dòng)
壓縮后大概 ~8k
使用npm i wc-swiper --save
// 在入口文件中引入(暫時(shí)不支持單組件引入的方式): import wcSwiper from "wc-swiper" import "wc-swiper/style.css" Vue.use(wcSwiper);
// 在需要使用的 view 里面引入:配置// 循環(huán)列表 // 這里放你需要輪播的內(nèi)容, 比如一張圖片 // 異步獲取 slides 的時(shí)候, 需要在 wc-swiper 上面添加 v-if 判斷 // 帶配置選項(xiàng) // 這里放你需要輪播的內(nèi)容, 比如一張圖片
在 wc-swiper 上面暴露了一些配置選項(xiàng):
duration: 一次滑動(dòng)的時(shí)間 | default: 500ms interval: 兩次滑動(dòng)間隔時(shí)間 | default: 2500ms autoplay: 是否自動(dòng)播放 | default: true therehold: 用戶滑動(dòng)多少距離之后自動(dòng)翻頁(yè) | default: 110 curSlide: 默認(rèn)顯示第幾個(gè) slide | default: 0事件
在 wc-swiper 上可以監(jiān)聽一些事件:
transitionend 事件 每一次滑動(dòng)結(jié)束(不論用戶手動(dòng)滑動(dòng), 還是自動(dòng)滑動(dòng)) 都會(huì)觸發(fā) transitionend 事件. transtionend 攜帶唯一一個(gè)參數(shù):currentSlide, 用來(lái)表明, 當(dāng)前 slide 是第幾個(gè) slide. 并且要注意: slide 從 0 開始計(jì)數(shù).
在 wc-slide 上面可以監(jiān)聽 click 事件.
方法有些時(shí)候, 你可能想要實(shí)現(xiàn)這樣一種操作: 點(diǎn)擊一個(gè)按鈕, 讓 swiper 跳轉(zhuǎn)到指定的 slide, 或者點(diǎn)擊按鈕, 讓
swiper 跳轉(zhuǎn)到上一個(gè)或者下一個(gè). 對(duì)此, 你可以這樣操作:
1. 在問題描述標(biāo)簽上添加 ref 屬性, 例如: 2. 通過(guò) this.$refs.swiper 來(lái)引用預(yù)先提供的 3 個(gè)方法: slideTo (index) 跳轉(zhuǎn)至指定索引 (index 從 0 開始) next () 跳轉(zhuǎn)到下一個(gè) previous () 跳轉(zhuǎn)到上一個(gè) 例如: this.$refs.swiper.slideTo(3) // 跳轉(zhuǎn)到索引為 3 的 slide
1. 如何設(shè)置輪播圖的高度
通過(guò)設(shè)置 wc-swiper 的高度即可. 比如:
.swiper { height: 200px; }
2. 如何渲染異步數(shù)據(jù)
一般情況下, 輪播的數(shù)據(jù)可能通過(guò)接口請(qǐng)求得來(lái), 此時(shí), 需要在 wc-swiper 上面加上 v-if 判斷, 從而延遲 wc-swiper 的渲染時(shí)機(jī):
3. 點(diǎn)擊 slide 的時(shí)候如果需要跳轉(zhuǎn)新的頁(yè)面該怎么辦
可以為 wc-slide 的內(nèi)容包裹一層 a 標(biāo)簽
//content
或者可以在 wc-slide 上面監(jiān)聽 click 事件:
4. 怎么添加 pagination 或者左右箭頭?
個(gè)人認(rèn)為, pagination 以及 arrow-left, arrow-right, 都只是 swiper 的配套設(shè)施, 而不應(yīng)該是組成的一部分. 所以沒有提供默認(rèn)的 pagination 和 arrow, 而是提供了 slot, 如果你希望
為 swiper 添加 pagination 或者 arrow, 可以通過(guò)這樣的方式添加:
可以參考這個(gè)的寫法:
存在的問題多指觸碰的時(shí)候, 比如多根手指同時(shí)滑動(dòng)的時(shí)候, 就會(huì)出現(xiàn)問題, 這種極端情況, 比較復(fù)雜和少見, 暫時(shí)不考慮.
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/84805.html
摘要:項(xiàng)目背景圖片輪播是前端項(xiàng)目必有項(xiàng),當(dāng)前有很多效果很酷炫的輪播插件,例如。此處應(yīng)該有掌聲,哈哈簡(jiǎn)而言之,就是當(dāng)需要一個(gè)簡(jiǎn)單的輪播時(shí),可以選用,自己寫一個(gè)組件。舉個(gè)栗子,就是我實(shí)現(xiàn)的這個(gè)基于實(shí)現(xiàn)分頁(yè)組件,移動(dòng)端和端均適用哦。 項(xiàng)目背景 圖片輪播是前端項(xiàng)目必有項(xiàng),當(dāng)前有很多效果很酷炫的輪播插件,例如Swiper。但是當(dāng)項(xiàng)目中的圖片輪播只需要一個(gè)很簡(jiǎn)單的輪播樣式,比如這樣的showImg(ht...
摘要:輪播圖插件前言寫這個(gè)插件的原因前段時(shí)間準(zhǔn)備用加上網(wǎng)易云的接口,模擬網(wǎng)易云音樂移動(dòng)端。目前主要實(shí)現(xiàn)了無(wú)縫輪播,自動(dòng)播放,端左右按鈕點(diǎn)擊切換,移動(dòng)端手勢(shì)滑動(dòng)切換。 輪播圖插件(Broadcast.js) 前言:寫這個(gè)插件的原因 前段時(shí)間準(zhǔn)備用vue加上網(wǎng)易云的nodejs接口,模擬網(wǎng)易云音樂移動(dòng)端。因?yàn)橄胱约簩懸槐樗械拇a以及加固自己的flex布局,所以沒有使用UI組件。在輪播圖部分,...
摘要:輪播圖插件前言寫這個(gè)插件的原因前段時(shí)間準(zhǔn)備用加上網(wǎng)易云的接口,模擬網(wǎng)易云音樂移動(dòng)端。目前主要實(shí)現(xiàn)了無(wú)縫輪播,自動(dòng)播放,端左右按鈕點(diǎn)擊切換,移動(dòng)端手勢(shì)滑動(dòng)切換。 輪播圖插件(Broadcast.js) 前言:寫這個(gè)插件的原因 前段時(shí)間準(zhǔn)備用vue加上網(wǎng)易云的nodejs接口,模擬網(wǎng)易云音樂移動(dòng)端。因?yàn)橄胱约簩懸槐樗械拇a以及加固自己的flex布局,所以沒有使用UI組件。在輪播圖部分,...
摘要:輪播圖插件前言寫這個(gè)插件的原因前段時(shí)間準(zhǔn)備用加上網(wǎng)易云的接口,模擬網(wǎng)易云音樂移動(dòng)端。目前主要實(shí)現(xiàn)了無(wú)縫輪播,自動(dòng)播放,端左右按鈕點(diǎn)擊切換,移動(dòng)端手勢(shì)滑動(dòng)切換。 輪播圖插件(Broadcast.js) 前言:寫這個(gè)插件的原因 前段時(shí)間準(zhǔn)備用vue加上網(wǎng)易云的nodejs接口,模擬網(wǎng)易云音樂移動(dòng)端。因?yàn)橄胱约簩懸槐樗械拇a以及加固自己的flex布局,所以沒有使用UI組件。在輪播圖部分,...
閱讀 3878·2021-07-28 18:10
閱讀 2589·2019-08-30 15:44
閱讀 1102·2019-08-30 14:07
閱讀 3471·2019-08-29 17:20
閱讀 1589·2019-08-26 18:35
閱讀 3546·2019-08-26 13:42
閱讀 1828·2019-08-26 11:58
閱讀 1604·2019-08-23 18:33