微信小程序-上拉加载更多数据+在数组后增加新数组+setData动态赋值


  • 上拉赋值:

首先,上拉赋值不用在json中进行配置,直接在js中添加onReachBottom函数即可。

onReachBottom函数中要获取数据用于显示。本例中的数据是页面初次加载时获取数据后,改变page参数的值,然后再次从后台获取数据增添到原有数据。

 1 onReachBottom: function(){  2   //从后端获取数据
 3   var that = this     
 4   var options = that.data.options  5   var listid = options.listid  6   var url = options.url  7 var page = that.data.page+1 8 that.setData({ 9 page:page 10  }) 11   //显示加载弹窗 
12  wx.showLoading({ 13       title:'加载中', 14  }) 15  wx.request({ 16  url:url, 17  data:{ 18  listid:listid, 19  page:page, 20  } 21     success:function(res){ 22 that.setData({ 23 lists: that.data.lists.concat(res.lists), 24 }) 25      //隐藏加载弹窗
26  wx.hideLoading(); 27  } 28  }) 29 }
  • 使用setData动态改变数值:

官方使用样例为:

this.setData({ 'array[0].text':'change data' })

即只能赋值一个静态值。解决方法如下:

1 var page = that.data.page+1
2 that.setData({ 3  page:page 4 }) 
  • 在数组中增加数组元素:

push将新数组作为一个元素加入到数组中。

concat将新数组的每个元素拆分出来单独加到数组当中。

使用concat解决两个数组的拼接:

1 that.setData({ 2  lists: that.data.lists.concat(res.lists), 3 })

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM