vue2实现可复用的轮播图carousel组件详解

 更新时间:2021年09月28日 10:46:00   作者:Take_Dream  
这篇文章主要为大家详细介绍了vue2实现可复用的轮播图carousel组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了vue2实现轮播图carousel组件的使用方法,供大家参考,具体内容如下

1、千年老规矩,上效果图,说明功能:

(1) 实现定时器,鼠标未移上图片时,自动轮播切换

(2) 有左右切换按钮,可切换至上一张、下一张

(3)有底部小图标,可自由切换至任意一张

github参考地址:https://github.com/chuanzaizai/vue_carousel

2、组件设计思路:

(1)由于是可复用的子组件,图片的宽高、定时器间隔时间、轮播图list应由父组件传入

(2)定义子组件自身变量,由于我这里为了简化步骤,所以轮播图list就暂时就定义为一个常量

同时定义了pos默认展示的图片数组下标,后面的计算属性会很有用

定时器变量

(3) 接着是比较关键的一些步骤:

a、为图片绑定的:src的计算属性

b、底部的小按钮应该动态生成,并且它的active样式应该依托于pos动态切换

c、上一张、下一张、定时器切换时就是++或者--pos,同时在两个临界值0和defaultList.length-1是判断就可以

d、由于下部小图标为动态生成、宽高不定,但是都应水平居中:

可采用flex布局,或者js调整样式

3、说明一下这样设计的原因

(1)子组件的复用性不言而喻,可定义宽高、定时器切换时间

(2)比较重要的一点:

a、组件加载过程中,如果轮播图数量过多,假如有10张,按照传统加载模式,就初始化一次性加载,再自行切换,这对页面的性能是很大的挑战

b、在以上组件的设计中,用为将pos定义为0,初始化只会加载一张图片,定时器切换或者用户手动切换才会其余图片,这对用户体验是很大的改善

4、代码已上传至github,喜欢的小伙伴可以点个赞!!!!!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Vue 级联下拉框的设计与实现

    Vue 级联下拉框的设计与实现

    在前端开发中,级联选择框是经常用到的,这样不仅可以增加用户输入的友好性,还能减少前后端交互的数据量。本文就介绍一下使用Vue实现级联下拉框,感兴趣的可以了解一下
    2021-07-07
  • vue移动端UI框架实现QQ侧边菜单组件

    vue移动端UI框架实现QQ侧边菜单组件

    这篇文章主要介绍了vue移动端UI框架实现仿qq侧边菜单组件,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-03-03
  • vue中阻止click事件冒泡,防止触发另一个事件的方法

    vue中阻止click事件冒泡,防止触发另一个事件的方法

    下面小编就为大家分享一篇vue中阻止click事件冒泡,防止触发另一个事件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • Vue3封装localStorage基本使用示例详解

    Vue3封装localStorage基本使用示例详解

    localStorage 和 sessionStorage 属性允许在浏览器中存储 key/value 对的数据,localStorage 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除,本文给大家介绍Vue3封装localStorage-基本使用,感兴趣的朋友一起看看吧
    2023-12-12
  • vue3-vite安装后main.ts文件和tsconfig.app.json文件报错解决办法

    vue3-vite安装后main.ts文件和tsconfig.app.json文件报错解决办法

    Vue.js是一个流行的JavaScript框架,它可以帮助开发者构建交互式Web应用程序,这篇文章主要给大家介绍了关于vue3-vite安装后main.ts文件和tsconfig.app.json文件报错解决办法,需要的朋友可以参考下
    2023-12-12
  • Vue实现无缝轮播效果

    Vue实现无缝轮播效果

    这篇文章主要为大家详细介绍了Vue实现无缝轮播效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • el-input宽度跟随输入内容自适应的实现方法

    el-input宽度跟随输入内容自适应的实现方法

    这篇文章主要给大家介绍了关于el-input宽度跟随输入内容自适应的实现方法,我们再实际应用中可能需要input文本框能够根据输入字符的所占据的宽度自动调节尺寸,需要的朋友可以参考下
    2023-08-08
  • vue3+vite使用element-plus问题

    vue3+vite使用element-plus问题

    这篇文章主要介绍了vue3+vite使用element-plus问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • vue中的watch监听数据变化及watch中各属性的详解

    vue中的watch监听数据变化及watch中各属性的详解

    这篇文章主要介绍了vue中的watch监听数据变化及watch中的immediate、handler和deep属性详解,本文大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2018-09-09
  • vue-element的select下拉框赋值实例

    vue-element的select下拉框赋值实例

    这篇文章主要介绍了vue-element的select下拉框赋值实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03

最新评论