在vue中使用swiper的初始化问题
UI出的设计稿上,有个类似于轮播图的展示功能的模块,但是需要两边小中间大的样子,于是就想起了有这么一个组件叫swiper。但是网上搜可以搜到swiper以及一个叫vue awesome swiper的,后来才发现两个不是同一个东西,不能混用,引用方式和用法啥的也不一样,如果用着swiper却写了awesome swiper的引入方式,样式啥的都不会生效。swiper中文网上刚好有这种两边小中间..
·
UI出的设计稿上,有个类似于轮播图的展示功能的模块,但是需要两边小中间大的样子,于是就想起了有这么一个组件叫swiper。但是网上搜可以搜到swiper以及一个叫vue awesome swiper的,后来才发现两个不是同一个东西,不能混用,引用方式和用法啥的也不一样,如果用着swiper却写了awesome swiper的引入方式,样式啥的都不会生效。
swiper中文网上刚好有这种两边小中间大的样例供你复制粘贴,所以干脆选择了swiper。键盘啪啪啪一顿敲之后,在调试的时候突然发现:swiper大概率在页面第一次打开的时候会歪到一边,并且显示不全。
咋整呢,网上搜到是异步加载的问题,同时得到几个解决方式,总结一下自己最后用的可以生效的那个方式:
用window.onload,代码如下:
mounted: function() {
window.onload = function() {
this.myswiper = new Swiper(".swiper-container", {
slidesPerView: "auto",
centeredSlides: true,
loop: true,
spaceBetween: 4,
navigation: {
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev",
},
});
};
}
( 'this.myswiper = ' 这段应该可以去掉)
如此一来在第一次打开页面的时候,swiper也不会歪了~
更多推荐
已为社区贡献1条内容
所有评论(0)