vue组件-轮播(carousel)
来源:互联网 发布:数据库和excel的区别 编辑:程序博客网 时间:2024/06/01 10:03
轮播是web开发中常用的组件,下面使用vue来构建一个简单的轮播组件,主要是从一个jquery轮播重构来的:
VUE轮播在线demo+源码地址:https://codepen.io/shayminsky21/pen/OORQVw
jquery轮播在线地址+源码:https://codepen.io/shayminsky21/pen/XzJgEp
首先是VUE的模板:
<carousel :picdata="pics"></carousel> </main><script type="text/x-template" id="carousel"><div id="carousel"><div v-for="(item,index) in picdata" :class="{'selected': index==curpic, 'next':index==curpic+1, 'nextRightSecond':index==curpic+2,'prev':index==curpic-1,'prevLeftSecond':index==curpic-2,'hideLeft':index<curpic-2,'hideRight':index>curpic+2}" @click="select(index)"><img v-bind:src="item.src"></div></div>
模板非常简单,使用v-for来遍历pics数组里的url,然后将img标签的src设定为对应的图片的url,index则可以记录每张图片所对应的序号,这样就可以根据组简历curpic的值来计算出每个图片对应的class,然后动态渲染。每张图片都绑定click事件,来触发模板的select方法并且将点击图片的index作为参数传入。
接下来是组件的逻辑部分:
Vue.component('carousel', {template: '#carousel', props: { picdata: Object },data: function () { return { curpic:2, }}, methods: { select: function (index) { this.curpic=index; } }})
组件部分的通过props的picdata属性来从父组件中获取到图片的url数据,组件中data里的curpic可以用来设置默认的当前图片序号,并且在之后记录当前选中图片的序号,通过这个数据,组件会为每个图片分配相应的class,然后渲染。
组件目前只有一个方法:select,用来吧curpic设置成为当前选中的图片的序号。
数据输入格式即一个对象数组。记录图片的url。
var pic=[ { src: "https://s16.postimg.org/vklrwoxtx/cover9.jpg"}, { src: "https://s16.postimg.org/cgsggckzp/cover8.jpg"}, {src:"https://s16.postimg.org/emmrauog5/cover7.jpg"}, {src:"https://s16.postimg.org/9drqcz611/cover1.jpg"}, {src:"https://s16.postimg.org/pnhwfvgp1/cover6.jpg"}, {src:"https://s16.postimg.org/fij8qay4l/cover3.jpg"} ];
大家可以根据这个简单的轮播模板添加自己想要的功能
阅读全文
0 0
- vue组件-轮播(carousel)
- 【Bootstrap】图片轮播组件Carousel
- 轮播组件vue
- vue组件-轮播(走马灯效果)
- react-native 轮播组件 looped-carousel使用介绍
- Bootstrap Carousel(轮播插件)
- Bootstrap 轮播(Carousel)插件
- Bootstrap 轮播(Carousel)插件
- Bootstrap 轮播(Carousel)插件
- Bootstrap之轮播 carousel
- vue 快捷轮播组件代码实现
- bootstrap轮播(carousel)图片竖着显示不能轮播的问题解决办法
- bootstrap 旋转木马carousel 图片轮播
- 轮播/Carousel/广告位/banner***scrollview
- bootstrap图片轮播插件carousel
- boostrap 轮播 carousel(旋转木马)
- 基于vue-strap的轮播组件,下载即用
- Bootstrap插件(八)——轮播(Carousel.js)
- php友盟推送测试代码
- 你希望函数的某些参数强制使用关键字参数传递:
- DS1302
- 深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
- 关于在内部类中类名.this的使用
- vue组件-轮播(carousel)
- DPDK pdump抓包说明
- 从零基础认识easyUI的dataGrid
- 图形用户界面
- 界面
- 动态顺序栈的简单实现
- 【示例教程】LEADTOOLS中如何用H.264压缩视频创建DICOM文件
- 作业区
- JAVA----Math类