背景
最近在做一个答题小程序,部分题型中试题数量比较大,一把带出来所有的试题,经过测试界面在试题数量大概在 100 道以上就会开始卡顿,而且试题越多,首次进来加载的时间越长。
一开始想的方案是分页进行加载,但是加载第二页的时候因为要请求接口,所以体验不是特别好。这种分页方式,还有个很大的问题,就是实现“答题卡”功能,在各个试题中跳转比较麻烦。于是在网上搜索,发现一种方案能完美解决这个问题。
简单说,就是 swiper 组件只需要准备三个 item,这三个 item 就相当于三个桶。然后设置 swiper 的 circular 属性为 true,这样可以实现循环滑动。而在滑动的过程中,我们可以通过监听 swiper 的 change 事件,来动态的更新桶中的内容。这样,不管试题有多少,我们只需要准备三个桶,就可以实现流畅的滑动效果。下面看代码: