首页 > 编程 > JavaScript > 正文

vue引入swiper插件的使用实例

2019-11-19 16:02:40
字体:
来源:转载
供稿:网友

本文介绍了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 + ')'}" 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表