vue引入swiper插件的使用实例

 更新时间:2017年07月19日 09:59:55   作者:灿尔哈擦苏  
本篇文章主要介绍了vue引入swiper插件的使用实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

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

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

相关文章

  • vue项目中在可编辑div光标位置插入内容的实现代码

    vue项目中在可编辑div光标位置插入内容的实现代码

    这篇文章主要介绍了vue项目中在可编辑div光标位置插入内容的实现代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • vue使用blob下载文件遇到的问题小结

    vue使用blob下载文件遇到的问题小结

    Blob 对象表示一个不可变、原始数据的类文件对象,这篇文章主要介绍了vue使用blob下载文件遇到的问题记录,需要的朋友可以参考下
    2024-02-02
  • Vue vant-ui使用van-uploader实现头像上传功能

    Vue vant-ui使用van-uploader实现头像上传功能

    这篇文章主要介绍了Vue vant-ui使用van-uploader实现头像图片上传,项目中是使用有赞vant-ui框架实现的头像上传替换功能,用到了封装的图片压缩封装之后再去上传图片this.$imgUpload.imgZip(),本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2022-05-05
  • vue安装node-sass和sass-loader报错问题的解决办法

    vue安装node-sass和sass-loader报错问题的解决办法

    这篇文章主要给大家介绍了关于vue安装node-sass和sass-loader报错问题的解决办法,文中通过图文以及示例代码将解决的方法介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2023-01-01
  • axios封装,使用拦截器统一处理接口,超详细的教程(推荐)

    axios封装,使用拦截器统一处理接口,超详细的教程(推荐)

    这篇文章主要介绍了axios封装使用拦截器处理接口,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • Vue组件之间的通信方式详细讲解

    Vue组件之间的通信方式详细讲解

    对于vue来说,组件之间的消息传递是非常重要的,用vue可以是要组件复用的,而组件实例的作用域是相互独立,这意味着不同组件之间的数据无法互相引用,一般来说,组件之间可以有几种关系,下面是我对组件之间消息传递的常用方式的总结
    2022-08-08
  • vue2实现封装动态表单组件

    vue2实现封装动态表单组件

    这篇文章主要介绍了vue2实现封装动态表单组件,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • vue-cli配置flexible过程详解

    vue-cli配置flexible过程详解

    这篇文章主要介绍了vue-cli配置flexible过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • vue cli 3.x 项目部署到 github pages的方法

    vue cli 3.x 项目部署到 github pages的方法

    这篇文章主要介绍了vue cli 3.x 项目部署到 github pages的方法,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-04-04
  • 解决Vue警告Write operation failed:computed value is readonly

    解决Vue警告Write operation failed:computed value is readonl

    这篇文章主要给大家介绍了关于如何解决Vue警告Write operation failed:computed value is readonly的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-03-03

最新评论