Vue实现上拉加载,无限加载数据

思路参考:https://www.jb51.net/article/96373.htm

页面已经通过fetch获取所有数据,并且用v-for显示出来所有的数据

需求:实现滚动加载:页面刚出现先显示几条,滚动继续加载几条
分析
首先,我们需要在页面开始渲染时自动获取一次列表,填充基础内容。其次,我们在每次滚动时也需要获取新的列表。

所以我们在methods中定义一个get方法,成功获取到数据后,就把获取的数组拼接到当前list数组后,从而实现了加载更多。

沿着这个思路,再想想get方法需要的参数,一个是包含了page和limit两个属性的对象,另一个是回调函数。回调函数我们已经说过,只需要拼接数组即可,因此只剩下最后一个page参数还没设置。

在初始化的时候,page的值应该为1,默认是第一页内容。之后page的值只由Next按钮改变,所以我们让page通过props获取App.vue中传来的page值。

最后则是补充get方法触发的条件。一是在组件的生命周期函数created中调用this.get()获取初始内容,另一是在page值变化时对应获取,所以我们watch了page属性,当其变化时,调用this.get()。

https://www.cnblogs.com/darkerxi/p/9606402.html

超酷的 mip-infinitescroll 无限滚动(无限下拉)
在这里插入图片描述
https://segmentfault.com/a/1190000008717245

【无限滚动加载数据】—infinite-scroll插件的使用
https://www.cnblogs.com/jpfss/p/9150312.html
官方:http://mint-ui.github.io/docs/#/zh-cn2/infinite-scroll
例子: https://newdadafe.github.io/impression_vue/#/pull-up

vue-pull-to/examples/pages/InfiniteScroll.vue
https://github.com/stackjie/vue-pull-to/blob/master/examples/pages/InfiniteScroll.vue
https://www.jianshu.com/p/e335f225692f

猜你喜欢

转载自blog.csdn.net/fengtingYan/article/details/85293019