当前位置:   article > 正文

uniapp向上拉加载,下拉刷新_uniapp局部下拉刷新上拉加载数据

uniapp局部下拉刷新上拉加载数据

一、上拉加载(页面 | uni-app官网

onReachBottom

可在pages.json里定义具体页面底部的触发距离onReachBottomDistance

比如设为50,那么滚动页面到距离底部50px时,就会触发onReachBottom事件。

如使用scroll-view导致页面没有滚动,则触底事件不会被触发。scroll-view滚动到底部的事件请参考scroll-view的文档。

使用实例:

  1. export default {
  2. data() {
  3. return {
  4. list: [],//数据列表
  5. params: {// 请求参数
  6. pageNum: 1,//页码
  7. pageSize: 10,//每页显示
  8. total: 0,//总条数
  9. },
  10. };
  11. },
  12. onLoad() {
  13. this.getList();
  14. },
  15. methods: {
  16. getList() {// 获取列表
  17. //调用接口
  18. listTrends(this.params).then((result) => {
  19. this.params.total = result.total;
  20. this.list = [...this.list, ...result.rows];//现有数据=旧数据+请求的新数据
  21. uni.stopPullDownRefresh()// 请求成功关闭下拉加载
  22. });
  23. },
  24. onReachBottom() {// 上拉加载
  25. // 当列表数量不大于或等于总数量,则再次调用接口请求数据
  26. if (this.list.length >= this.params.total) return;
  27. this.params.pageNum++;
  28. this.getList();
  29. },
  30. },
  31. };

二、下拉刷新

onPullDownRefresh(pages.json 页面路由 | uni-app官网

首先需要在pages.json中找到需要下拉刷新的页面,配置enablePullDownRefresh为true

示例

  1. {
  2. "path": "pages/mine/index",
  3. "style": {
  4. "navigationBarTitleText": "我的",
  5. "enablePullDownRefresh": true
  6. }
  7. }

页面示例

  1. export default {
  2. data() {
  3. return {
  4. list: [],//数据列表
  5. params: {// 请求参数
  6. pageNum: 1,//页码
  7. pageSize: 10,//每页显示
  8. total: 0,//总条数
  9. },
  10. };
  11. },
  12. onLoad() {
  13. this.getList();
  14. },
  15. //下拉刷新方法
  16. onPullDownRefresh () {
  17. this.params.pageNum = 1
  18. this.list = []
  19. this.getList() //获取数据
  20. },
  21. methods: {
  22. getList() {// 获取列表
  23. listTrends(this.params).then((result) => {
  24. this.params.total = result.total;
  25. this.list = [...this.list, ...result.rows];//现有数据=旧数据+请求的新数据
  26. });
  27. },
  28. onReachBottom() {// 上拉加载
  29. // 当列表数量不大于或等于总数量,则再次调用接口请求数据
  30. if (this.list.length >= this.params.total) return;
  31. this.params.pageNum++;
  32. this.getList();
  33. },
  34. },
  35. };

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/221435
推荐阅读
相关标签
  

闽ICP备14008679号