vue-awesome-swiper的使用以及API整理

一、先說一個看關于vue-awesome-swiper的一個坑

vue項目的package.json中顯示的"vue-awesome-swiper": "^2.5.4",用npm install自動安裝依賴時裝的版本為"version": "2.6.7",而單獨安裝(npm install vue-awesome-swiper@2.5.4)的則是正常的"version": "2.5.4"

???????這兩個版本都是基于swiper3的,從官網上swiper3的教程來看并不需要單獨引入樣式文件,而2.6.7版本需要單獨引入swiper/dist/css目錄下的swiper.css樣式文件(類似于swiper4)。

并且2.6.7版本swiper位于node_modules/vue-awesome-swiper/node_modules下;2.5.4不需要單獨引入樣式文件,并且swiper直接位于node_modules文件夾下。

二、基本使用方法

1.安裝(略)

2.引用

/*全局引入*/importVueAwesomeSwiperfrom'vue-awesome-swiper'import'swiper/dist/css/swiper.css'//這里注意具體看使用的版本是否需要引入樣式,以及具體位置。Vue.use(VueAwesomeSwiper,/* { default global options } */)

/*組件方式引用*/import'swiper/dist/css/swiper.css'////這里注意具體看使用的版本是否需要引入樣式,以及具體位置。import{ swiper, swiperSlide }from'vue-awesome-swiper'exportdefault{components: {? ? ? swiper,? ? ? swiperSlide? ? }

3.使用

就是一般組件的用法

<!--以下看需要添加-->//滾動條//下一項//上一項//標頁碼

data(){return{swiperOption: {//swiper3autoplay:3000,speed:1000,? ? ? }? ? }? }

三、配置

參數類型(swiper3)默認值(swiper3)類型(swiper4)默認值(swiper4)說明

autoplayNumber/Boolean0/falseObjectautoplay自動切換

speedNumber300Number300切換速度

loopBooleanfalseBooleanfalseloop模式

loopAdditionalSlidesNumber0Number0loop模式下會在slides前后復制若干個slide,,前后復制的個數不會大于原總個數。

loopedSlidesNumber1Number1在loop模式下使用slidesPerview:'auto',還需使用該參數設置所要用到的loop個數。

directionStringhorizontalStringhorizontalSlides的滑動方向

autoplayDisableOnInteractionBooleantrue--用戶操作swiper之后,是否禁止autoplay

autoplayStopOnLastBooleantrue--切換到最后一個slide時停止自動切換

grabCursorBooleanfalseBooleanfalse鼠標覆蓋Swiper時指針會變成手掌形狀,拖動時指針會變成抓手形狀

widthNumber-Number-強制Swiper的寬度

heightNumber-Number-強制Swiper的高度

autoHeightBooleanfalseBooleanfalse自動高度

freeMode:swiper3/4 api相同

freeModeBooleanfalse--free模式,slide會根據慣性滑動且不會貼合

freeModeMomentumBooleantrue--free模式動量。若設置為false則關閉動量,釋放slide之后立即停止不會滑動。

freeModeMomentumRatioNumber1--free模式動量值(移動慣量)

freeModeMomentumVelocityRatioNumber1--動量反彈

freeModeMomentumBounceBooleantrue--Slides的滑動方向

freeModeMomentumBounceRatioNumber1--值越大產生的邊界反彈效果越明顯,反彈距離越大。

freeModeStickyBooleanfalse--使得freeMode也能自動貼合。

effect:swiper3/4 api相同

effectStringslide--slide的切換效果。

fade/fadeEffect(4)Objectfade--fade效果參數。

cube/cubeEffectObjectcube--cube效果參數。

coverflow/coverflowEffectObjectcoverflow--coverflow效果參數。

flip/flipEffectObjectflip--flip效果參數。

Zoom:

zoomBooleanfalseObjectzoom焦距功能:雙擊slide會放大,并且在手機端可雙指觸摸縮放。

zoomMaxNumber3--最大縮放焦距(放大倍率).

zoomMinNumber1--最小縮放焦距(縮小倍率)。

zoomToggleBooleantrue--設置為false,不允許雙擊縮放,只允許手機端觸摸縮放。

pagination:

paginationString-Objectpagination分頁器容器的css選擇器或HTML標簽

paginationTypeString---bullets’ 圓點(默認)‘fraction’ 分式 ‘progress’ 進度條‘custom’ 自定義

paginationClickableBooleanfalse--點擊分頁器的指示點分頁器控制Swiper切換

paginationHideBooleanfalse--默認分頁器會一直顯示

paginationElementStringspan--設定分頁器指示器(小點)的HTML標簽。

Navigation Buttons:swiper4 navigation

nextButtonstring / HTMLElement---前進按鈕的css選擇器或HTML元素。

prevtButtonstring / HTMLElement---后退按鈕的css選擇器或HTML元素。

Scrollbar:

scrollbarstring / HTMLElement-Objectswiper4 ScrollbarScrollbar容器的css選擇器或HTML元素

scrollbarHideBoleantrue--滾動條是否自動隱藏。

scrollbarDraggableBooleanfalse--該參數設置為true時允許拖動滾動條。

scrollbarSnapOnReleaseBooleanfalse--如果設置為true,釋放滾動條時slide自動貼合。

autoplay:

autoplay: {delay:3000,//自動切換的時間間隔,單位msstopOnLastSlide:false,//當切換到最后一個slide時停止自動切換stopOnLastSlide:true,//如果設置為true,當切換到最后一個slide時停止自動切換。disableOnInteraction:true,//用戶操作swiper之后,是否禁止autoplay。reverseDirection:true,//開啟反向自動輪播。waitForTransition:true,//等待過渡完畢。自動切換會在slide過渡完畢后才開始計時。},

fade:

fadeEffect: {crossFade:false,? }

cube:

cubeEffect: {slideShadows:true,//開啟slide陰影。默認 true。shadow:true,//開啟投影。默認 true。shadowOffset:100,//投影距離。默認 20,單位px。shadowScale:0.6//投影縮放比例。默認0.94。},

coverflow:

coverflowEffect: {rotate:30,//slide做3d旋轉時Y軸的旋轉角度。默認50。stretch:10,//每個slide之間的拉伸值,越大slide靠得越緊。 默認0。depth:60,//slide的位置深度。值越大z軸距離越遠,看起來越小。 默認100。modifier:2,//depth和rotate和stretch的倍率,相當于depth*modifier、rotate*modifier、stretch*modifier,值越大這三個參數的效果越明顯。默認1。slideShadows :true//開啟slide陰影。默認 true。},

flip:

flipEffect: {slideShadows:true,//slides的陰影。默認true。limitRotation :true,//限制最大旋轉角度為180度,默認true。}

zoom:

zoom: {maxRatio:5,//最大倍數minRatio:2,//最小倍數toggle:false,//不允許雙擊縮放,只允許手機端觸摸縮放。containerClass:'my-zoom-container',//zoom container 類名},

navigation:

navigation: {nextEl:'.swiper-button-next',//前進按鈕的css選擇器或HTML元素。prevEl:'.swiper-button-prev',//后退按鈕的css選擇器或HTML元素。hideOnClick:true,//點擊slide時顯示/隱藏按鈕disabledClass:'my-button-disabled',//前進后退按鈕不可用時的類名。hiddenClass:'my-button-hidden',//按鈕隱藏時的Class},

pagination:

pagination: {el:'.swiper-pagination',type:'bullets',//type: 'fraction',//type : 'progressbar',//type : 'custom',progressbarOpposite:true,//使進度條分頁器與Swiper的direction參數相反bulletElement :'li',//設定分頁器指示器(小點)的HTML標簽。dynamicBullets:true,//動態分頁器,當你的slide很多時,開啟后,分頁器小點的數量會部分隱藏。dynamicMainBullets:2,//動態分頁器的主指示點的數量hideOnClick:true,//默認分頁器會一直顯示。這個選項設置為true時點擊Swiper會隱藏/顯示分頁器。clickable:true,//此參數設置為true時,點擊分頁器的指示點分頁器會控制Swiper切換。},

Scrollbar:

scrollbar: {el:'.swiper-scrollbar',hide:true,//滾動條是否自動隱藏。默認:false,不會自動隱藏。draggable:true,//該參數設置為true時允許拖動滾動條。snapOnRelease:true,//如果設置為false,釋放滾動條時slide不會自動貼合。dragSize:30,//設置滾動條指示的尺寸。默認'auto': 自動,或者設置num(px)。},

原文? ?https://segmentfault.com/a/1190000014609379

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。