小程序触底刷新和分页加载

2018-08-30(自己悄咪咪加个日期)
emmm....日期难道不是自动生成的嘛(算了还是自己加上好了,方便后面找~)
果然小sb哎。。。
好了好了先说正事,说完就可以吃月饼啦~(๑• . •๑)

触底刷新就是在触底的时候执行一次分页加载的函数,页码+1。所以,先说分页加载啦。
请求数据列表的时候,接口原本是写在onload里面,一次性请求所有。写了分页之后,假设一次加载10条,首先传参数给后台,比如page=1,加载出10条,触底的时候page+1,再传给后台,加载出接下来10条,把新返回的数组和之前的数组合并就可以,以此类推。

var app=getApp();
var getMore1 = function (that) {
  var page = that.data.page;//页码
  // 需求列表
  app.util.request({
    url: "entry/wxapp/DemandList",//这里是你的接口
    cachetime: "0",
    data: {
      page: page,
      type_id: that.data.type_id//这个不用管,是我传的筛选时候的参数,跟分页没关系
    },
    success: function (res) {
      if (res.data == '' && that.data.xuqiuArr!='') {
        wx.showToast({
          title: '没有更多数据!',
          icon: 'success',
          duration: 2000
        })
      }
      var arr = that.data.xuqiuArr//旧的数组
      for (var i = 0; i < res.data.length; i++) {
        arr.push(res.data[i])
      }
      that.setData({
        xuqiuArr: arr
      });
      page++;
      that.setData({
        page: page
      })
    }

  });
};

(上面的代码并没有写在page({ })里)
注意,data里一定要有page和数组的初始值,否则会报错:

/**
   * 页面的初始数据
   */
  data: {
    page:1,
    xuqiuArr:[]
  }

如果页面是onshow的时候刷新的,记得要把数组清空,page初始化为1:

onShow: function () {
    var that=this;
    that.setData({
      page:1,
      xuqiuArr:[]
    })
    getMore1(that)
  },

然后在每次触底的时候调用getMore1()函数就行了:

/**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    var that=this;
      getMore1(that)
  },

总结:看代码就行,文字大多是废话。。。主要是合并旧的数组和新的数组,然后记得页面刷新的时候及时清空数组和初始化页码就行。
(PS:想想还是决定把自己写的东西都发布出去,毕竟我这样的小菜鸟闭门也是造不出车的。
如果能有幸帮到哪位大兄弟或者小可爱那最好不过,有写的不对的地方请指正,一定及时改,有错望轻喷,蟹蟹 >﹏<)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,009评论 3 119
  • 二十几岁的时候,你生活在哪个城市?你现在会怀念她吗?你身上有那个城市的印记吗? --题记 办公室新来了一位同事,和...
    夏天的田格子阅读 491评论 2 4
  • 我参加了一场自行车拉力赛,比赛举行在群山峻林之中,赛道异常惊险,犹如细长的黑丝缠绕在众山腰或顶上,旁边就是万丈深谷...
    MrWolf_阅读 283评论 0 2
  • UI-Router ng-route 与 ui-route 的区别·: (1)ng-route的局限性:一个页面无...
    郝郝a阅读 700评论 0 2
  • 在平日繁杂的教育工作中,我们教育学生要这样要那样,不能这样不能那样,我们仿佛一个指挥官,理所当然地指挥着教...
    嘎鱼嘎鱼阅读 194评论 0 0