记vue使用swiper插件遇到的坑

栏目: CSS · 发布时间: 5年前

内容简介:一、在main.js引入swiper的css样式二、在需要使用的组件里局部引用swiper三、html使用注册的组件
npm install swiper --save-dev

一、在main.js引入swiper的css样式

import 'swiper/dist/css/swiper.css'

二、在需要使用的组件里局部引用swiper

import { swiper, swiperSlide } from 'vue-awesome-swiper'
export default {
    components: {
       swiper,
       swiperSlide
    }
}

三、html使用注册的组件

<div class="memInfo">
    <swiper v-if="swiperData.length > 0" :options = "swiperOption">
        <swiper-slide v-for="(item,index) in swiperData" :key="index">
            <div class="infoText">
                <img :src="item.headImg"/><span class="spanOne"> {{item.nickname}}</span><span></span>
            </div>
        </swiper-slide>
    </swiper>
</div>

三、初始化swiper,我习惯在data里面初始化

data() {
    return {
        swiperOption:{
            direction : 'vertical',
            slidesPerView: 5,
            loop: true,//需要数据渲染之后才起作用,用v-if控制数据渲染完在加载组件
            observeParents:true,
            observer:true,
            autoplay: {
                disableOnInteraction: false,
                delay:500
            }
        },
    }
}

然后就会发现为什么没有显示轮播图。

那是因为css样式写得不好,swiper容器没有高度,所以没有显示。

解决:

在swiper外面包着一层div设置其高度和宽度。

并且swiper会有一个默认属性swiper-container,必须使其属性继承memInfo的高度和宽度,这是为了使swiper容器有高度,才会显示。

.memInfo .swiper-container{
    width: 100%;
    height: 100%;
}

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

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

顺势而为--雷军传

顺势而为--雷军传

采文 / 哈尔滨出版社 / 2014-9 / 29.80

主要介绍了雷军上大学开始创业到加入金山再到成为天使投资人一直最后创立小米公司的过程,以及他的“站在风口的猪”等个人名言思想的涉及。一起来看看 《顺势而为--雷军传》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

SHA 加密
SHA 加密

SHA 加密工具