背景
要实现一个常见的功能,就是H5页面里面做一个横向滑动的卡片样式
配置
- 把 vue-awesome-swiper 放到插件里
// /plugins/vue-awesome-swiper.client.js
import Vue from 'vue';
// import VueAwesomeSwiper from 'vue-awesome-swiper/dist/ssr';
if (process.browser) {
const VueAwesomeSwiper = require('vue-awesome-swiper/dist/ssr');
Vue.use(VueAwesomeSwiper);
}
注意swiper-wrapper 和 swiper-slide 这两个类名 一定要写
<div
v-swiper:mySwiper="swiperOption"
class="wrapper"
>
<div class="swiper-wrapper">
<ul class="swiper-slide">
<li></li>
<li></li>
<li></li>
</ul>
</div>
</div>
export default {
data () {
return {
swiperOption: {
slidesPerView: 'auto',
// spaceBetween: 0, /* 在slide之间设置距离(单位px) */
// observer: true, /* 启动动态检查器(OB/观众/观看者),当改变swiper的样式(例如隐藏/显示)或者修改swiper的子元素时,自动初始化swiper */
// observeParents: true, /* 将observe应用于Swiper的祖先元素。当Swiper的祖先元素变化时,例如window.resize,Swiper更新。 */
freeMode: true, /* free模式,slide会根据惯性滑动且不会贴合 */
freeModeMomentumBounce: true, /* 动量反弹。false时禁用free模式下的动量反弹,slides通过惯性滑动到边缘时,无法反弹 */
freeModeMomentumRatio: 0.2, /* 值越大产生的边界反弹效果越明显,反弹距离越大。 */
freeModeMomentumVelocityRatio: 0.4 /* free模式惯性速度,设置越大,释放后滑得越快。 */
},
}
},
}
<style lang="scss" scoped>
@import url('swiper/dist/css/swiper.css');
</style>