记一次mpvue开发考试小程序的坑

1 需求是 题目能够左右滑动。一开始是把一道题做成组件,然后全部渲染出来。但是题目太多 有上千题,这样一次性渲染出来会导致小程序很卡,基本是几秒才会响应一次,肯定是不行的。后面用的小程序自带的 基础组件swiper,初始化的时候从缓存取出3道题放入数组变量,然后滑动的时候在重新去缓存取 相应的左右题目。举个例子,如果当前数组变量 = [题目1,题目2,题目3],现在滑块2往滑块3 方向滑动,则数组变量应变成= [题目4,题目2,题目3] 。

2 小程序基础swiper 的坑。 组件属性current,官方文档 指明 如果 bindchange 的事件回调函数中使用 setData 改变 current 值,则有可能导致 setData 被不停地调用。在开发中,我把current 绑定一个变量,在跳转的时候重新设置current的值,出现了组件来回跳动的bug,因为需要判断当前滑块的位置,因此每次滑动时,用一个变量去记录current的值,而不是绑定,然后通过比对就可以知道滑块左滑动还是右滑动。但是这样就不是通过事件去 设置跳转滑块了

你可能感兴趣的:(记一次mpvue开发考试小程序的坑)