微信小程序-上拉加載更多數據+在數組后增加新數組+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