前言

  vue 项目中使用时,组件swiper-slide 如果用v-for循环的话,loop:true 就不能无缝轮播,每次轮播到最后一张就停止了???

正文

  代码如下:  

 <swiper :options="swiperOption2">
<swiper-slide v-for="(item, index) of showProduct" :key="index">
<el-row>
<el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="12">
<div class="product-div">
<div class="product-p" v-html='item.introduction'></div>
</div>
</el-col>
<el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="12">
<div id="product-img" v-if="item.androidcode !== null && item.androidcode !== ''">
<div class="grid-img">
<img class="android-img " :src="httpImgSrc+'/showImg@file.do?id=' + item.androidcode">
</div>
</div>
</el-col>
</el-row>
</swiper-slide>
<div v-show="isShow" class="swiper-button-prev" id="swiper-button-prev" slot="button-prev" style="mergin-top:-50px"></div>
<div v-show="isShow" class="swiper-button-next" id="swiper-button-next" slot="button-next"></div>
<div class="swiper-pagination-1" slot="pagination" id="swiper-pagination1"></div>
</swiper>

data数据:

swiperOption2: {
slidesPerView: 1,
spaceBetween: 30,
centeredSlides: true,
slidesPerGroup: 1,
loop: true,
pagination: {
el: '.swiper-pagination-1',
clickable: true
},
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev'
}
}

这么写看似是没毛病的。可是loop:true这个条件就失效了。这是为啥呢?

仔细查看swiper文档。

  loop

  设置为true 则开启loop模式。loop模式:会在原本slide前后复制若干个slide(默认一个)并在合适的时候切换,让Swiper看起来是循环的。 
loop模式在与free模式同用时会产生抖动,因为free模式下没有复制slide的时间点。

注意红字,在原本基础上复制若干个slide,可是在vue的v-for中时,异步加载的数据都还没有返回时,就先加载了Swiper组件并复制了sliper

解决方法;

  利用v-if的属性,v-if=showProduct.length,确保异步加载的数据已经返回后,再加载swiper组件

代码如下:

  

<swiper :options="swiperOption2"  v-if="showProduct.length">
<swiper-slide v-for="(item, index) of showProduct" :key="index">
<el-row>
<el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="12">
<div class="product-div">
<div class="product-p" v-html='item.introduction'></div>
</div>
</el-col>
<el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="12">
<div id="product-img" v-if="item.androidcode !== null && item.androidcode !== ''">
<div class="grid-img">
<img class="android-img " :src="httpImgSrc+'/showImg@file.do?id=' + item.androidcode">
</div>
</div>
</el-col>
</el-row>
</swiper-slide>
<div v-show="isShow" class="swiper-button-prev" id="swiper-button-prev" slot="button-prev" style="mergin-top:-50px"></div>
<div v-show="isShow" class="swiper-button-next" id="swiper-button-next" slot="button-next"></div>
<div class="swiper-pagination-1" slot="pagination" id="swiper-pagination1"></div>
</swiper>

 

<div  v-if="showProduct.length">
<swiper :options="swiperOption2" >
<swiper-slide v-for="(item, index) of showProduct" :key="index">
<el-row>
<el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="12">
<div class="product-div">
<div class="product-p" v-html='item.introduction'></div>
</div>
</el-col>
<el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="12">
<div id="product-img" v-if="item.androidcode !== null && item.androidcode !== ''">
<div class="grid-img">
<img class="android-img " :src="httpImgSrc+'/showImg@file.do?id=' + item.androidcode">
</div>
</div>
</el-col>
</el-row>
</swiper-slide>
<div v-show="isShow" class="swiper-button-prev" id="swiper-button-prev" slot="button-prev" style="mergin-top:-50px"></div>
<div v-show="isShow" class="swiper-button-next" id="swiper-button-next" slot="button-next"></div>
<div class="swiper-pagination-1" slot="pagination" id="swiper-pagination1"></div>
</swiper>
</div>

重启项目,loop完美解决

vue中使用swiper-slide时,循环轮播失效?的更多相关文章

  1. swiper在vue项目中的循环轮播bug以及点击事件

    一般的,如果是静态数据(本地数据),可以直接在mounted生命周期中初始化,循环轮播.自动播放都比较正常. 但是,如果是动态从后台获取数据的话,采用上述方法会发现,轮播图无法自动播放,也无法拖拽. ...

  2. 解决ajax异步请求数据后swiper不能循环轮播(loop失效)问题、滑动后不能轮播的问题。

    问题描述: 1.我使用axios异步请求后台的图片进行渲染后不能实现循环轮播,也就是loop失效,但是静态写死的情况下不会出现这种问题. 2. 分析: swiper的机制是:初始化的时候将swiper ...

  3. Vue编写轮播组件引入better-scroll插件无法正常循环轮播

    临近过年还是发个博客表示一下自己的存在感,这段时间公司突然说想搞小程序,想到这无比巨大的坑就只能掩面而泣,于是乎这段时间在学习小程序开发.关于标题所说的是有老铁问的,我也跟着网上的代码码了一遍然后发现 ...

  4. 利用jQuery实现图片无限循环轮播(不借助于轮播插件)

    原来我主要是用Bootstrap框架或者swiper插件实现轮播图的功能,而这次是用jQuery来实现图片无限循环轮播! 用到的技术有:html.css.JavaScript(少).jQuery(主要 ...

  5. 在Nuxt中使用react-id-swiper封装公共的轮播图组件(移动端

    首先就是引入swiper import Swiper from 'react-id-swiper': 一个轮播图首先要考虑到一种情况就是当只有一张图的时候是不是需要按轮播图来处理 一般情况下,一张图是 ...

  6. 解析SwiftUI布局细节(二)循环轮播+复杂布局

    前言 上一篇我们总结的主要是VStack里面的东西,由他延伸到 @ViewBuilder, 接着我们上一篇总结的我们这篇内容主要说的是下面的几点,在这些东西说完后我准备解析一下苹果在SiwftUI文档 ...

  7. 超级详细 一听就会:利用JavaScript jQuery实现图片无限循环轮播(不借助于轮播插件)

    前言 作为一个前端工程师,无论公司是什么行业,无论你做什么端,基本都会遇到一个避不开的动画效果:循环轮播.做轮播并不难,市场上的轮播插件有很多,其中比较著名的是swiper,使用也非常简单.但轮播插件 ...

  8. 利用JavaScript jQuery实现图片无限循环轮播(不借助于轮播插件)-----转载

    前言 作为一个前端工程师,无论公司是什么行业,无论你做什么端,基本都会遇到一个避不开的动画效果:循环轮播.做轮播并不难,市场上的轮播插件有很多,其中比较著名的是swiper,使用也非常简单.但轮播插件 ...

  9. vue.js学习之better-scroll封装的轮播图初始化失败

    vue.js学习之better-scroll封装的轮播图初始化失败 问题一:slider组件初始化失败 原因:页面异步获取数据很慢,导致slider初始化之后,数据还未获取到,导致图片还未加载 解决方 ...

随机推荐

  1. HBase源码实战:ImportTsv

    /** * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agr ...

  2. Dockerfile 规范

    https://time-track.cn/compile-docker-from-source.html 参考 https://time-track.cn/install-docker-on-ubu ...

  3. volatile分析

    volatile三大特性: 1. 内存可见性 2.不保证原子性 3. 禁止重排序内存屏障的概念:memory barrier是一个CPU指令.指令逻辑:a.确保一些特定操作执行顺序 b.影响一些数据的 ...

  4. Luogu4755 Beautiful Pair 最值分治、主席树

    传送门 整天做一些模板题感觉药丸 设\(val_i\)表示第\(i\)个位置的值 看到区间最大值考虑最值分治.对于当前的区间\([l,r]\),找到区间最大值\(mid\),递归\([l,mid-1] ...

  5. .Net Core应用框架Util介绍(三)

    上篇介绍了Util的开发环境,并让你把Demo运行起来.本文将介绍该Demo的前端Angular运行机制以及目录结构. 目录结构 在VS上打开Util Demo,会看见如下的目录结构. 现代前端通常采 ...

  6. 【Android】pidcat 不显示日志输出

    问题: 直接安装了 pidcat :  brew install pidcat ,装完以后执行 pidcat <package name> ,发现没有日志输出,adb devices 也能 ...

  7. 【转】shell脚本中如何传入参数

    (1)直接用$1,$2取传入的参数vim /root/test.sh#!/bin/bashif [ $1 == "start" ]  then     echo "do ...

  8. Kubernetes — 重新认识Docker容器

    这一次,我要用+Docker+部署一个用+Python+编写的+Web+应用.这个应用的代码部分(app.py)非常简单: from flask import Flask import socket ...

  9. jQuery 事件对象的属性

    jQuery 在遵循 W3C 规范的情况下,对事件对象的常用属性进行了封装,使得事件处理在各大浏览器下都可以正常运行而不需要进行浏览器类型判断. (1) event.type 该方法的作用是可以获取到 ...

  10. J2SE学习笔记

    如何学习Java 一.面向对象设计思想 1.面向对象:开车去新疆,车怎么去的我不管,我只调用车的go() 方法即可. 2.类和对象:类可以看成一类对象的模板,对象可以看成该类的一个具体实例. 3.类和 ...