记vue使用swiper插件遇到的坑

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

内容简介:一、在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%;
}

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

查看所有标签

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

超预期

超预期

[美] 莱昂纳多·因基莱里、迈卡·所罗门 / 杨波 / 后浪丨江西人民出版社 / 2017-11 / 45.00元

用户体验决定产品成败,只有超预期才能赢得好口碑! 互联网大佬一致推崇的打造爆款产品及服务的核心理念 ................... ※编辑推荐※ ☆ 超预期,才有用户体验,互联网大佬一致推崇的打造爆款产品及服务的核心理念 - 周鸿祎:“什么叫用户体验?超过用户预期才叫 体验!” - 雷军:“口碑的真谛是超越用户的期望值。” - 马化腾:“用户体验,......一起来看看 《超预期》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具