vue引入swiper插件的使用实例


Posted in Javascript onJuly 19, 2017

本文介绍了vue引入swiper插件,分享给大家,希望对大家有帮助

步骤一:安装vue,  

$ npm install vue

步骤二:创建vue项目  

# 全局安装 vue-cli 
$ npm install -g vue-cli 
$ cd my-project 
$ npm install 
$ npm run dev

上面这些就是安装好vue项目,最主要的就是下面的步骤

步骤三:下载好swiper相关的js和css,js放在static目录下,css放在assets目录下。 

步骤四: 

安装runtime: 

终端命令:npm install babel-runtime 

步骤五: 

修改.eslintrc.js文件如下: 

// http://eslint.org/docs/user-guide/configuring 
 
module.exports = { 
 root: true, 
 parser: 'babel-eslint', 
 parserOptions: { 
  sourceType: 'module' 
 }, 
 env: { 
  browser: true, 
 }, 
 // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style 
 extends: 'standard', 
 // required to lint *.vue files 
 plugins: [ 
  'html' 
 ], 
 // add your custom rules here 
 'rules': { 
  // allow paren-less arrow functions 
  'arrow-parens': 0, 
  // allow async-await 
  'generator-star-spacing': 0, 
  // allow debugger during development 
  'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0 
 }, 
 'globals': { 
  "Swiper": true 
 }  //这个地方是新加入的  全局注入 
}

步骤六:在自己的vue文件中添加轮播图代码 

<div v-on:mouseenter="stopPlay()" v-on:mouseleave="play()" class="swiper-container gallery-top swiper-container-horizontal"> 
  <div class="swiper-wrapper"> 
    <div v-for="value in lbt" class="swiper-slide swiper-slide-next" style="width: 100%; margin-right: 10px;" v-bind:style="{backgroundImage: 'url(' + value.imgs + ')'}"></div> 
  </div> 
  <div class="swiper-button-next swiper-button-white"></div> 
  <div class="swiper-button-prev swiper-button-white swiper-button-disabled"></div> 
</div> 
<div class="swiper-container gallery-thumbs swiper-container-horizontal"> 
  <div class="swiper-wrapper"> 
    <div v-for="value in lbt" class="swiper-slide swiper-slide-next" style="margin-right: 10px;" v-bind:style="{backgroundImage: 'url(' + value.imgs + ')'}"></div> 
  </div> 
</div>
import Swiper from '../../static/swiper-3.4.2.min.js' 
let galleryTop 
let galleryThumbs 
export default { 
 name: 'main', 
 data () { 
  return { 
   lbt: [ 
    { 
     'imgs': '../static/product/lbt1.jpg' 
    }, { 
     'imgs': '../static/product/lbt2.jpg' 
    }, { 
     'imgs': '../static/product/lbt3.jpg' 
    } 
   ] 
  } 
 }, 
 mounted () { 
  this.lunbo() 
 }, 
 methods: { 
  lunbo () { 
   galleryTop = new Swiper('.gallery-top', { 
    nextButton: '.swiper-button-next', 
    prevButton: '.swiper-button-prev', 
    spaceBetween: 10, 
    grabCursor: true, 
    initialSlide: 1, 
    autoplayDisableOnInteraction: false 
   }) 
   galleryThumbs = new Swiper('.gallery-thumbs', { 
    spaceBetween: 10, 
    autoplay: 4000, 
    initialSlide: 1, 
    centeredSlides: true, 
    slidesPerView: 'auto', 
    touchRatio: 0.2, 
    slideToClickedSlide: true, 
    autoplayDisableOnInteraction: false, 
    grabCursor: true 
   }) 
   galleryTop.params.control = galleryThumbs 
   galleryThumbs.params.control = galleryTop 
  }, 
  stopPlay () { 
   galleryTop.stopAutoplay() 
   galleryThumbs.stopAutoplay() 
  }, 
  play () { 
   galleryTop.startAutoplay() 
   galleryThumbs.startAutoplay() 
  } 
 } 
}
@import url("../assets/swiper-3.4.2.min.css"); 
.gallery-top{  
  height:32rem;  
  width:100%; 
}  
.gallery-thumbs{  
  height:20%;  
  box-sizing:border-box;  
  padding:10px 0;  
  background: rgba(0, 0, 0, 0.4); 
  cursor: pointer; 
}  
.gallery-thumbs .swiper-slide{  
  width:30%;  
  height:6rem;  
  opacity:0.3;  
}  
.gallery-thumbs .swiper-slide-active{  
  opacity:1;  
}  
.swiper-slide{ 
 background-size: 100% 160%; 
 -webkit-background-size: 100% 160%; 
}

这里还有一个很重要的问题,在模板里面设置背景图,写法应该是

v-bind:style="{backgroundImage: 'url(' + value.imgs + ')'}"

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

Javascript 相关文章推荐
Using the TextRange Object
Oct 14 Javascript
js实现的日期操作类DateTime函数代码
Mar 16 Javascript
JS制作简单的三级联动
Mar 18 Javascript
Jquery全选与反选点击执行一次的解决方案
Aug 14 Javascript
JS+CSS实现带小三角指引的滑动门效果
Sep 22 Javascript
Angularjs 实现分页功能及示例代码
Sep 14 Javascript
Angular.js中ng-if、ng-show和ng-hide的区别介绍
Jan 20 Javascript
vue-cli webpack 开发环境跨域详解
May 18 Javascript
谈谈对vue响应式数据更新的误解
Aug 01 Javascript
chosen实现省市区三级联动
Aug 16 Javascript
bootstrap-table formatter 使用vue组件的方法
May 09 Javascript
js前端如何写一个精确的倒计时代码
Oct 25 Javascript
vue loadmore 组件滑动加载更多源码解析
Jul 19 #Javascript
JS实现的走迷宫小游戏完整实例
Jul 19 #Javascript
JS设置随机出现2个数字的实例代码
Jul 19 #Javascript
利用jQuery异步上传文件的插件用法详解
Jul 19 #jQuery
JavaScript 值类型和引用类型的初次研究(推荐)
Jul 19 #Javascript
基于bootstrap实现多个下拉框同时搜索功能
Jul 19 #Javascript
深入理解vue2.0路由如何配置问题
Jul 18 #Javascript
You might like
smarty模板引擎之配置文件数据和保留数据
2015/03/30 PHP
PHP调试的强悍利器之PHPDBG
2016/02/22 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
2017/12/25 PHP
Javascript document.referrer判断访客来源网址
2020/05/15 Javascript
jQuery获取(选中)单选,复选框,下拉框中的值
2014/02/21 Javascript
使用JavaScript和C#中获得referer
2014/11/14 Javascript
jQuery实现大转盘抽奖活动仿QQ音乐代码分享
2015/08/21 Javascript
JS使用正则表达式实现关键字替换加粗功能示例
2016/08/03 Javascript
js阻止默认右键的下拉菜单方法
2018/01/02 Javascript
Vue2.5学习笔记之如何在项目中使用和配置Vue
2018/09/26 Javascript
VUE基于NUXT的SSR 服务端渲染
2018/11/30 Javascript
浅谈vue后台管理系统权限控制思考与实践
2018/12/19 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
2019/04/15 Javascript
js实现鼠标拖拽div左右滑动
2020/01/15 Javascript
vue相关配置文件详解及多环境配置详细步骤
2020/05/19 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
Python深入学习之内存管理
2014/08/31 Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
2014/11/18 Python
深入理解python函数递归和生成器
2016/06/06 Python
Python如何生成树形图案
2018/01/03 Python
Python使用flask框架操作sqlite3的两种方式
2018/01/31 Python
解决pycharm无法调用pip安装的包问题
2018/05/18 Python
Python I/O与进程的详细讲解
2019/03/08 Python
Python序列类型的打包和解包实例
2019/12/21 Python
Python数据相关系数矩阵和热力图轻松实现教程
2020/06/16 Python
英国第二大营养品供应商:Vitabiotics
2016/10/01 全球购物
“型”走纽约上东区:Sam Edelman
2017/04/02 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
2014年物业公司工作总结
2014/11/22 职场文书
2014年酒店服务员工作总结
2014/12/08 职场文书
庐山导游词
2015/02/03 职场文书
党员干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
2016年优秀教师先进事迹材料
2016/02/26 职场文书
MySQL Shell的介绍以及安装
2021/04/24 MySQL
Python列表删除重复元素与图像相似度判断及删除实例代码
2021/05/07 Python
聊聊CSS粘性定位sticky案例解析
2022/06/01 HTML / CSS