微信小程序向原数组添加元素,微信小程序向原数组追加元素
方法一:合并覆盖数组
data 是回调返回的数据
formatTimeTwo() 把时间戳转为格式化日期时间
list 是 this.data.list
concat() 合并覆盖this.data.list原有数组元素
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Page({ data:{ list: [] }, onLoad: function (opt) { let self = this wx.request({ url: '/index', success: function(data){ ... for (let i in data) { data[i].timestamp = formatTimeTwo(data[i].timestamp) self.setData({ list: self.data.list.concat(data[i]) }) } ... } }) } }) |
方法二:将元素插入到数组的开始部分
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Page({ data:{ list: [{name:'obj1'},{name:'obj2'}] }, onLoad: function (opt) { let self = this wx.request({ url: '/index', success: function(data){ // data = {name:'I'm appended'} ... self.setData({ list: self.data.list.unshift(data) // 加在数据头 }) ... } }) } }) |
结果:
this.data.list = [{name:'I'm appended'},{name:'obj1'},{name:'obj2'}]
解决小程序警告:Now you can provide attr “wx:key” for a “wx:for” to improve performance.