前言:

最近在做项目的过程中用到了轮播图,发现uniapp的swiper组件只能实现一些简单的轮播。

说到轮播,第一时间就想到了swiperjs库,问题是小程序里面没有dom的概念,所以这个库并不能兼容小程序。于是,在网上翻了很多资料,也找了很多文章,得到的答案是不兼容,无法使用。难道真的只能自己写吗?

探索:

我想到了uniapp生态里重要的一个板块:插件市场。

在插件市场里搜了swiper,发现了一个可以实现复杂的轮播效果的插件:zebra-swiper 3D轮播,全面对标swiperjs并实现全端兼容。 - DCloud 插件市场 适配多端的高自定义轮播组件,多种3D效果。全面对标swiperjs。icon-default.png?t=N7T8https://ext.dcloud.net.cn/plugin?id=7273并且我发现,在使用上,和swiperjs很相似,抱着试一试以及怀疑的态度,下载了示例项目。

让我惊喜的是,里面几乎实现了swiperjs的所有功能,并且可以兼容微信小程序及其他多端。

使用:

因为我的项目是hbuilderX创建的,所以用uni_modules引入后,直接就可以使用了。

最终实现效果就不展示了(怕被说丑哈哈哈)。总之使用体验还是很不错的,因为之前对swiperjs用的比较多,这个可以说是很好的一个平替。

最后,给大家分享一段自定义层叠效果的配置代码

optionsCreative: {
					spaceBetween: -200,
					slidesPerView: 'auto',
					grabCursor: true,
					effect: 'creative',
					centeredSlides: true,
					slideToClickedSlide: false,
					creativeEffect: {
						prev: {
							translate: [-200, 0, 0],
							scale: 0.8,
						},
						next: {
							translate: [200, 0, 0],
							scale: 0.8,
						},
						limitProgress: 2
					}
				},

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐