vue轮播(完整详细版)
轮播组件vue
</swiper>
安装
npm install vue-awesome-swiper --save
首先在main.js引入
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.引用
- /*全局引入*/
- import VueAwesomeSwiper from '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'
- export default {
- components: {
- swiper,
- swiperSlide
- }
3.使用
就是一般组件的用法
- <swiper :options="swiperOption">
- <swiper-slide><img src="static/images/jay.jpg"></swiper-slide>
- <swiper-slide><img src="static/images/jay.jpg"></swiper-slide>
- <swiper-slide><img src="static/images/jay.jpg"></swiper-slide>
- <swiper-slide><img src="static/images/jay.jpg"></swiper-slide>
- <swiper-slide><img src="static/images/jay.jpg"></swiper-slide>
- <swiper-slide><img src="static/images/jay.jpg"></swiper-slide>
- </swiper>
- <!--以下看需要添加-->
- <div class="swiper-scrollbar"></div> //滚动条
- <div class="swiper-button-next"></div> //下一项
- <div class="swiper-button-prev"></div> //上一项
- <div class="swiper-pagination"></div> //标页码
- data(){
- return{
- swiperOption: {//swiper3
- autoplay: 3000,
- speed: 1000,
- }
- }
- }
三、配置
| 参数 | 类型(swiper3) | 默认值(swiper3) | 类型(swiper4) | 默认值(swiper4) | 说明 |
|---|---|---|---|---|---|
| autoplay | Number/Boolean | 0/false | Object | autoplay | 自动切换 |
| speed | Number | 300 | Number | 300 | 切换速度 |
| loop | Boolean | false | Boolean | false | loop模式 |
| loopAdditionalSlides | Number | 0 | Number | 0 | loop模式下会在slides前后复制若干个slide,,前后复制的个数不会大于原总个数。 |
| loopedSlides | Number | 1 | Number | 1 | 在loop模式下使用slidesPerview:'auto',还需使用该参数设置所要用到的loop个数。 |
| direction | String | horizontal | String | horizontal | Slides的滑动方向 |
| autoplayDisableOnInteraction | Boolean | true | - | - | 用户操作swiper之后,是否禁止autoplay |
| autoplayStopOnLast | Boolean | true | - | - | 切换到最后一个slide时停止自动切换 |
| grabCursor | Boolean | false | Boolean | false | 鼠标覆盖Swiper时指针会变成手掌形状,拖动时指针会变成抓手形状 |
| width | Number | - | Number | - | 强制Swiper的宽度 |
| height | Number | - | Number | - | 强制Swiper的高度 |
| autoHeight | Boolean | false | Boolean | false | 自动高度 |
| freeMode: | swiper3/4 api相同 | ||||
| freeMode | Boolean | false | - | - | free模式,slide会根据惯性滑动且不会贴合 |
| freeModeMomentum | Boolean | true | - | - | free模式动量。若设置为false则关闭动量,释放slide之后立即停止不会滑动。 |
| freeModeMomentumRatio | Number | 1 | - | - | free模式动量值(移动惯量) |
| freeModeMomentumVelocityRatio | Number | 1 | - | - | 动量反弹 |
| freeModeMomentumBounce | Boolean | true | - | - | Slides的滑动方向 |
| freeModeMomentumBounceRatio | Number | 1 | - | - | 值越大产生的边界反弹效果越明显,反弹距离越大。 |
| freeModeSticky | Boolean | false | - | - | 使得freeMode也能自动贴合。 |
| effect: | swiper3/4 api相同 | ||||
| effect | String | slide | - | - | slide的切换效果。 |
| fade/fadeEffect(4) | Object | fade | - | - | fade效果参数。 |
| cube/cubeEffect | Object | cube | - | - | cube效果参数。 |
| coverflow/coverflowEffect | Object | coverflow | - | - | coverflow效果参数。 |
| flip/flipEffect | Object | flip | - | - | flip效果参数。 |
| Zoom: | |||||
| zoom | Boolean | false | Object | zoom | 焦距功能:双击slide会放大,并且在手机端可双指触摸缩放。 |
| zoomMax | Number | 3 | - | - | 最大缩放焦距(放大倍率). |
| zoomMin | Number | 1 | - | - | 最小缩放焦距(缩小倍率)。 |
| zoomToggle | Boolean | true | - | - | 设置为false,不允许双击缩放,只允许手机端触摸缩放。 |
| pagination: | |||||
| pagination | String | - | Object | pagination | 分页器容器的css选择器或HTML标签 |
| paginationType | String | - | - | - | bullets’ 圆点(默认)‘fraction’ 分式 ‘progress’ 进度条‘custom’ 自定义 |
| paginationClickable | Boolean | false | - | - | 点击分页器的指示点分页器控制Swiper切换 |
| paginationHide | Boolean | false | - | - | 默认分页器会一直显示 |
| paginationElement | String | span | - | - | 设定分页器指示器(小点)的HTML标签。 |
| Navigation Buttons: | swiper4 navigation | ||||
| nextButton | string / HTMLElement | - | - | - | 前进按钮的css选择器或HTML元素。 |
| prevtButton | string / HTMLElement | - | - | - | 后退按钮的css选择器或HTML元素。 |
| Scrollbar: | |||||
| scrollbar | string / HTMLElement | - | Object | swiper4 Scrollbar | Scrollbar容器的css选择器或HTML元素 |
| scrollbarHide | Bolean | true | - | - | 滚动条是否自动隐藏。 |
| scrollbarDraggable | Boolean | false | - | - | 该参数设置为true时允许拖动滚动条。 |
| scrollbarSnapOnRelease | Boolean | false | - | - | 如果设置为true,释放滚动条时slide自动贴合。 |
- autoplay: {
- delay: 3000, //自动切换的时间间隔,单位ms
- stopOnLastSlide: false, //当切换到最后一个slide时停止自动切换
- stopOnLastSlide: true, //如果设置为true,当切换到最后一个slide时停止自动切换。
- disableOnInteraction: true, //用户操作swiper之后,是否禁止autoplay。
- reverseDirection: true, //开启反向自动轮播。
- waitForTransition: true, //等待过渡完毕。自动切换会在slide过渡完毕后才开始计时。
- },
- fadeEffect: {
- crossFade: false,
- }
- cubeEffect: {
- slideShadows: true, //开启slide阴影。默认 true。
- shadow: true, //开启投影。默认 true。
- shadowOffset: 100, //投影距离。默认 20,单位px。
- shadowScale: 0.6 //投影缩放比例。默认0.94。
- },
- 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。
- },
- flipEffect: {
- slideShadows : true, //slides的阴影。默认true。
- limitRotation : true, //限制最大旋转角度为180度,默认true。
- }
- zoom: {
- maxRatio: 5, //最大倍数
- minRatio: 2, //最小倍数
- toggle: false, //不允许双击缩放,只允许手机端触摸缩放。
- containerClass: 'my-zoom-container', //zoom container 类名
- },
- 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: {
- 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: {el: '.swiper-scrollbar', hide: true, //滚动条是否自动隐藏。默认:false,不会自动隐藏。
- draggable: true, //该参数设置为true时允许拖动滚动条。
- snapOnRelease: true, //如果设置为false,释放滚动条时slide不会自动贴合。
- dragSize: 30, //设置滚动条指示的尺寸。默认'auto': 自动,或者设置num(px)。
- }
vue轮播(完整详细版)的更多相关文章
- SpringBoot整合Mybatis完整详细版二:注册、登录、拦截器配置
接着上个章节来,上章节搭建好框架,并且测试也在页面取到数据.接下来实现web端,实现前后端交互,在前台进行注册登录以及后端拦截器配置.实现简单的未登录拦截跳转到登录页面 上一节传送门:SpringBo ...
- SpringBoot整合Mybatis完整详细版
记得刚接触SpringBoot时,大吃一惊,世界上居然还有这么省事的框架,立马感叹:SpringBoot是世界上最好的框架.哈哈! 当初跟着教程练习搭建了一个框架,传送门:spring boot + ...
- Java学习路线(完整详细版)
Java学习路线(完整详细版) https://jingyan.baidu.com/article/c1a3101e110864de656deb83.html
- vue轮播,展示pdf
vue轮播,展示pdf 根据左侧图片格式,右侧展示相应的pdf文件与图片.(vue中不支持pdf格式,pdf文件要放在static文件里):代码如下: <template> <!-- ...
- [02-01]Java学习路线(完整详细版)
Java基础课程 Java基础课程内容涉及:Java开发介绍.Java数组.Java面向对象.常用基础类.集合.IO流.多线程.异常.网络.反射. 第一阶段:Java基础 1 第一部分:Java开发介 ...
- 做一个vue轮播图组件
根据huangyi老师的慕课网vue项目跟着做的,下面大概记录了下思路 1.轮播图的图 先不做轮播图逻辑部分,先把数据导进来,看看什么效果.在recommend组件新建一个recommends的数组, ...
- vue轮播组件及去掉路由#
最近公司要我去实现vue知识的系统讲解,总结一番,大致需要7节课,今天大致说一下我们使用vue需要学会的基本技能.vue是一个渐进性视图渲染框架,使用vue核心是数据出发,数据一般是我们前台从后台获取 ...
- vue轮播图实现
1.先安装组件 cnpm install vue-awesome-swiper; 2.在main.js下引入文件: import VueAwsomeSwiper from 'vue-awesome-s ...
- vue轮播图插件vue-awesome-swiper的使用与组件化
不管是APP还是移动端网页开发,轮播图在大部分项目当中都是存在的,这时候如果用vue开发项目,选择一款好的插件并且封装好是很重要的 1. 推荐使用vue-awesome-swiper 安装:cnpm ...
随机推荐
- 【原创】遇到:Invalid layout of java.lang.String at value 这样的问题,该怎么办呢?
Invalid layout of java.lang.String at value## A fatal error has been detected by the Java Runtime En ...
- appium+pytest+allure+jenkins 如何实现多台手机连接
使用appium可以实现app自动化测试,我们之前是连接一台手机去运行,如何同时连接多台手机呢?很多人可能想到的是多线程(threading).今天分享一种比多线程更简单的方法,虽然不是多台手机同时运 ...
- uva10944 状态压缩bfs or DP
又是一道状压搜索,题解有的是状压DP做的目前不会日后补 写好了以后一直蜜汁WA,看别人代码把判断再次回到原点的语句写在了Q.pop()之后而不是for里,对我也是一种启发吧这样写确实有好处比如起点就是 ...
- UVA-10305 Ordering Tasks (拓扑排序)
题目大意:给出n个点,m条关系,按关系的从小到大排序. 题目分析:拓扑排序的模板题,套模板. kahn算法: 伪代码: Kahn算法: 摘一段维基百科上关于Kahn算法的伪码描述: L← Empty ...
- css中的f弹性盒子模型的应用案例
案例1: <!doctype html> <html> <head> <meta charset="utf-8"> <meta ...
- java Web 工程servlet中@WebServlet("/HelloServlet") 是怎么工作的
编写好Servlet之后,接下来要告诉Web容器有关于这个Servlet的一些信息.在Servlet 3.0中,可以使用标注(Annotation)来告知容器哪些Servlet会提供服务以及额外信息. ...
- HDFS读写流程
01.并行读取 02.逐个节点写入
- PHP中实用的模式之【门面模式】
author:胡旭个人博客 blog:http://www.ihuxu.com 欢迎关注~~~~ 对于一些逻辑稍微复杂的程序,很难避免出现在不某个类中无法访问 ...
- 解析xml(当节点中有多个子节点)
概要:解析一个xml,当一个节点中又包含多个子节点如何解析,对比一个节点中不包括其他节点的情况. 一,xml样例 <cisReports batNo="查询批次号" unit ...
- 转:application/json 四种常见的 POST 提交数据方式
四种常见的 POST 提交数据方式 HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种.其中 PO ...