一、swiper插件从后台获取数据没问题,css代码也没问题,但是图片不动,应该怎么解决?
实质:vue的生命周期,vue其实是提前 初始化,但是数据还没从后台给我们返回过来。
- 主要原因是swiper提前初始化,这个时候数据还没有完全出来
- 解决方式:一个是从vue,一个是从swiper
- vue中的nectTick()用于解决dom的先后执行问题
<div class="swiper-container"><div class="swiper-wrapper"><div class="swiper-slide"><img src='http://temp.im/640x320'/>//使用它去占位</div><div class="swiper-slide"><img src='http://temp.im/640x320'/>//使用它去占位</div><div class="swiper-slide"><img src='http://temp.im/640x320'/>//使用它去占位</div></div></div>
在.vue组件中<script>import Swiper from 'swiper'import 'css/swiper.css'export default{mounted(){this.$nextTick(function(){var mySwiper = new Swiper('.swiper-container',direction: 'vertical', // 垂直切换选项loop: true, // 循环模式选项autoplay:true,//自动轮播observer:true,//解决swiper执行的先后数据,初始化先执行了});})}}</script>
