vue移动端轻量级的轮播组件实现代码


Posted in Javascript onJuly 12, 2018

一个简单的移动端卡片滑动轮播组件,适用于Vue2.x

c-swipe 2.0 全新归来。重写了全部的代码,更靠谱的质量,更优秀的性能

vue移动端轻量级的轮播组件实现代码

English Document

安装

npm install c-swipe --save

使用

注册组件

// main.js
// 引入 c-swipe 主文件
import 'c-swipe/dist/swipe.css';
import { Swipe, SwipeItem } from 'c-swipe';
// 全局注册组件
Vue.component('swipe', Swipe);
Vue.component('swipe-item', SwipeItem);

在 .vue 单文件组件中使用:

<swipe
 v-model="index"
 style="text-align: center; line-height: 80px; height: 100px; background: #42b983;"
>
 <swipe-item style="height: 100px; line-height: 100px">item1</swipe-item>
 <swipe-item style="height: 100px; line-height: 100px">item2</swipe-item>
 <swipe-item style="height: 100px; line-height: 100px">item3</swipe-item>
</swipe>
new Vue({
 data: function () {
  return {
   index: 0, // two way
  };
 },
});

或者,你想在 html 标签中直接引用

<link href="../node-modules/c-swipe/dist/swipe.css" rel="external nofollow" rel="stylesheet"></head>
<script type="text/javascript" src="../node-modules/c-swipe/dist/swipe.js"></script>
var vueSwipe = swipe.Swipe;
var vueSwipeItem = swipe.SwipeItem;
new Vue({
 el: 'body',
 // 注册组件
 components: {
  'swipe': vueSwipe,
  'swipe-item': vueSwipeItem
 },
 // ...
 // ...
});

配置

选项 类型 默认 描述
v-model Number 0 绑定了当前显示卡片的索引,该数据为双向绑定,可通过更改 v-model 的值直接更改当前显示卡片
pagination Boolean true 是否需要默认样式的导航器
loop Boolean true 循环切换
autoplayTime Number 0 单位 ms,自动切换卡片的时间间隔,值为 0 时不自动切换
speed Number 300 单位 ms, 切换卡片时的过渡效果的播放时长
minMoveDistance String '20%' 成功触发切换卡片事件的最小滑动距离,可以传入百分比,如 '20%',或者传入具体像素距离,如 '80px'。

方法

swipe.reset()

c-swipe 内部将重新计算 Swipe 的宽度,并根据新的宽度来计算滚屏的距离。这个可以解决容器重置大小后 c-swipe 滚屏距离不正确的问题。

例:

<swipe ref="swipe">
 <swipe-item>item1</swipe-item>
 <swipe-item>item2</swipe-item>
 <swipe-item>item3</swipe-item>
</swipe>
<script>
 export default {
  // ...
  // ...
  handleResize() {
   this.$refs.swipe.reset();
  }
  mounted() {
   // 避免上下文丢失
   this.handleResize = this.handleResize.bind(this);
   window.addEventListener('resize', this.handleResize);
  },
  destroyed() {
   window.removeEventListener('resize', this.handleResize);
  }
  // ...
  // ...
 }
</script>

总结

以上所述是小编给大家介绍的vue移动端轻量级的轮播组件实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
PJ Blog修改-禁止复制的代码和方法
Oct 25 Javascript
jquery 回车事件实现代码
Aug 23 Javascript
解析javascript 实用函数的使用详解
May 10 Javascript
JS两种定义方式的区别、内部原理
Nov 21 Javascript
JS判断浏览器是否支持某一个CSS3属性的方法
Oct 17 Javascript
js实现鼠标移到链接文字弹出一个提示层的方法
May 11 Javascript
JavaScript 正则表达式中global模式的特性
Feb 25 Javascript
JavaScript实现Fly Bird小游戏
Dec 15 Javascript
基于require.js的使用(实例讲解)
Sep 07 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
Oct 01 Javascript
集成vue到jquery/bootstrap项目的方法
Feb 10 jQuery
详解VUE中常用的几种import(模块、文件)引入方式
Jul 03 Javascript
详解node.js的http模块实例演示
Jul 12 #Javascript
Vue中使用的EventBus有生命周期
Jul 12 #Javascript
JavaScript中发出HTTP请求最常用的方法
Jul 12 #Javascript
vue实现引入本地json的方法分析
Jul 12 #Javascript
jQuery实现checkbox全选功能完整实例
Jul 12 #jQuery
JS实现将二维数组转为json格式字符串操作示例
Jul 12 #Javascript
vue路由组件按需加载的几种方法小结
Jul 12 #Javascript
You might like
解析在PHP中使用mysqli扩展库对mysql的操作
2013/07/03 PHP
百度ping方法使用示例 自动ping百度
2014/01/26 PHP
php实现的http请求封装示例
2016/11/08 PHP
PHP构造二叉树算法示例
2017/06/21 PHP
yii2中LinkPager增加总页数和总记录数的实例
2017/08/28 PHP
JavaScript Cookie显示用户上次访问的时间和次数
2009/12/08 Javascript
JS实现自适应高度表单文本框的方法
2015/02/25 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
jQuery实现简单的滑动导航代码(移动端)
2017/05/22 jQuery
解决vue2.x中数据渲染以及vuex缓存的问题
2017/07/13 Javascript
微信小程序 转发功能的实现
2017/08/04 Javascript
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
开发Vue树形组件的示例代码
2017/12/21 Javascript
关闭Vue计算属性自带的缓存功能方法
2018/03/02 Javascript
Vue.js中的computed工作原理
2018/03/22 Javascript
vue2.0父子组件间传递数据的方法
2018/08/16 Javascript
微信小程序 云开发模糊查询实现解析
2019/09/02 Javascript
浅谈Layui的eleTree树式选择器使用方法
2019/09/25 Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
2019/12/06 Javascript
electron 如何将任意资源打包的方法步骤
2020/04/16 Javascript
python得到qq句柄,并显示在前台的方法
2018/10/14 Python
selenium获取当前页面的url、源码、title的方法
2019/06/12 Python
python制作简单五子棋游戏
2019/06/18 Python
Python面向对象程序设计之私有变量,私有方法原理与用法分析
2020/03/23 Python
Python中socket网络通信是干嘛的
2020/05/27 Python
Python持续监听文件变化代码实例
2020/07/22 Python
Python使用eval函数执行动态标表达式过程详解
2020/10/17 Python
利用纯css3实现的文字亮光特效的代码演示
2014/11/27 HTML / CSS
文秘专业自荐信
2013/10/14 职场文书
竞聘医务工作人员的自我评价分享
2013/11/04 职场文书
普罗米修斯教学反思
2014/02/06 职场文书
幼儿园母亲节活动方案
2014/03/10 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
禁止酒驾标语
2014/06/25 职场文书
关于国庆节的广播稿
2015/08/19 职场文书
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题