vue2中swiper的使用(swiper6)

项目场景:

前言:vue2的项目开发中因为使用swiper遇到了很多问题:

例如:怎么引用和使用,

原生直接按需引入swiper-bundle.min.js和swiper-bundle.min.css文件即可,

官方vue的使用也是在vue3的说明,没有vue2的使用文档


引入方法:

一、肯定是先安装依赖

npm install swiper@^6.8.4

二、局部引入

import { Swiper, Navigation, Pagination, Autoplay, Mousewheel } from 'swiper'; 
import 'swiper/swiper-bundle.css';
Swiper.use([Navigation, Pagination, Autoplay, Mousewheel]);

 这里除了Swiper是必须引入的话,其余的参数都是用到什么就加入什么,具体官方给我们提供了如下这些参数。(这里很好用的一个方法就是直接扒原码,能清楚知道可以用什么)

export {
  Swiper,
  SwiperOptions,
  A11y,
  Autoplay,
  Controller,
  EffectCoverflow,
  EffectCube,
  EffectFade,
  EffectFlip,
  HashNavigation,
  History,
  Keyboard,
  Lazy,
  Mousewheel,
  Navigation,
  Pagination,
  Parallax,
  Scrollbar,
  Thumbs,
  Virtual,
  Zoom,
};


使用方法:

html使用:

<div class="swiper">
  <div class="swiper-wrapper">
    <div class="swiper-slide">slider1</div>
    <div class="swiper-slide">slider2</div>
    <div class="swiper-slide">slider3</div>
  </div>
 <!-- 如果需要分页器 -->
      <div
       ref="paginationBullets"
       class="swiper-pagination"
       slot="pagination"></div>
</div>

js中使用:

  /**
       * @description: 初始化整个首页的轮播
       */
     this.swiperFullPage = new Swiper('.swiper-container-parent', {
          spaceBetween: 0, //slide之间的距离(单位px)
          initialSlide: 0,
          direction: 'vertical',
          speed: 900, // 切换速度,即slider自动滑动开始到结束的时间(单位ms)
          resistance: false, // 边缘抵抗
          resistanceRatio: 0, // 抵抗率。边缘抵抗力的大小比例。值越小抵抗越大越难将slide拖离边缘,0时完全无法拖离
          slidesPerView: 'auto', // 设置slider容器能够同时显示的slides数量(carousel模式)
          mousewheel: false,
          allowTouchMove: false, // 是否允许触摸滑动
          // 如果需要分页器
          pagination: {
            el: '.swiper-pagination',
            clickable: true,
          },
          on: {
            // 使用箭头函数,不然this指向有问题
            slideChangeTransitionStart: ()=> {
              this.isAnimation = true;
            },
            slideChangeTransitionEnd: (swiper) => {
              this.isAnimation = false; 
            },
          },
        });

Vue 2使用Swiper v4版本并添加动画效果,你需要安装Swiper库以及 swiper-animate 插件。首先,确保通过npm或yarn安装基础Swiper包: ```bash npm install swiper@4 # 或者 yarn add swiper@4 ``` 然后,安装swiper-animate插件: ```bash npm install swiper-animate # 或者 yarn add swiper-animate ``` 接下来,在项目里引入 Swiperswiper-animate,并在组件中配置Swiper实例,设置animate选项开启动画: ```javascript import { Swiper, SwiperSlide } from 'swiper'; import 'swiper/animate'; export default { components: { Swiper, SwiperSlide }, data() { return { swiperOptions: { // 其他常规配置... animate: true, // 开启动画 // 如果需要特定滑动动画,可以使用 swiperAnimateOptions 代替 animate // swiperAnimateOptions: { // duration: 500, // 动画持续时间,单位ms // easing: 'easeInOutQuart', // 动画缓动函数 // }, } }; }, mounted() { this.swiper = new Swiper('.swiper-container', this.swiperOptions); }, beforeDestroy() { this.swiper.destroy(); // 销毁Swiper实例时关闭动画 } }; ``` 在HTML模板中创建Swiper容器: ```html <div class="swiper-container"> <div class="swiper-wrapper"> <!-- 滑块内容 --> <swiper-slide>Slide 1</swiper-slide> <swiper-slide>Slide 2</swiper-slide> <!-- 更多滑块... --> </div> </div> ``` 现在,Swiper会应用默认的滑动动画效果。你可以根据需要调整`animate`选项或其他动画相关配置来自定义动画。如果你有特殊的需求,如自定义动画路径,可能需要结合 swiper-animate 的 API 来编写。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值