微信小程序调用接口 并把数据解构赋值 下拉刷新新增数据

微信小程序数组[{},{}]对象转数组.forEach不可以操作对象
0,[],undefine,null,''  都返回false  null == undefined  true   === false

JSON可以有两种格式

一种是对象格式的:

{"name":"JSON","address":"北京市西城区","age":25}//JSON的对象格式的字符串
另一种是数组对象

[{"name":"JSON","address":"北京市西城区","age":25}]//数据对象格式

let arr = [{a:1},{a:2},{a:3}]
		let newarr = []
		arr.forEach((item,index)=>{
			newarr.push(item.a)
		})
		console.log(newarr)//[1,2,3]
this.setData({
    noticearr: newarr
})

for i 循环数组 可改变新增数组的第i项
var datas = res.data.data;
    for (var i in datas) {
      //改变
      datas[i].CreateTime = util.date_time(datas[i].CreateTime)
      //新增
     datas[i].type = 1
    }
    that.setData({
        news: datas,
    })

对象转化为数组(forEach不可以操作对象)
let obj={
	a:4,
	b:5,
	c:6
}
let newarr = []
for(let i in obj){
	newarr.push(obj[i])
}
console.log(newarr)//[4,5,6]

let obj={
	a:4,
	b:5,
	c:6,
	d:{
	    A:7,
	    B:8,
	    C:9,
    }
}
let newarr = []
for(let i in obj.d){
	newarr.push(obj.d[i])
}
console.log(newarr)//7,8,9

wxml:调用接口数据

wxss一起写了:
/*scroll-view 高度设为100% 并且page的高度 也要100% 才有效! */
page{
  height: 100%;
}
.item{
  display: inline-block;
  width: 335rpx;
  margin: 10rpx 20rpx;
  text-align: center;
  vertical-align: top;
}
.item image{
  width: 100%;
  height: 550rpx; 
  box-shadow: 0 0 10px #ccc;
}
.item text{
  font:12px/1.5 "微软雅黑";
}
.loading{
  text-align: center;
}
.loading image{
  width: 80rpx;
}
////////////////////



  
    
    
    {{item.title +"/"+ item.rate}} 
  
  
  
    
  


wx.js 请求数据

//获取应用实例
const app = getApp()
Page({
  data: {
  list: [],//先定义一个数组
  start:0, //第几页数据
  loading: false,
  },
  onLoad: function () {
   this.loadData() //页面初始化加载数据
  },
  // 加载更多
  loadmore() {
    if (!this.data.loading) {
      this.loadData()
    }
  },
  //加载
  loadData(){
    //提取JSON数据、解构赋值对提取JSON对象中的数据,尤其有用。
    let { list,start,loading, } = this.data; //解构赋值
    wx.showLoading({
      title: '正在拼命加载加载中...',
      mask:true
    })
    this.setData({
      loading:true
    })
    wx.request({
      url: `https://www.koocv.com/h5-view/v/movie/list?page_start=${start}`,//超级字符串
      header: {
        'content-type': 'application/json'
      },
      //请求成功后
      success: (res) => {
        console.log(res.data.subjects);
       // list = res.data.subjects //基本写法
        let { subjects } = res.data;//解构赋值写法
        start += 20;
        list.push(...res.data.subjects) //... 把subjects打散变成为一个一个单独的参数传过去
        this.setData({
          list: list,
          start:start,
          loading:false
        })
        wx.hideLoading();
      }
    })
  }
})

 

你可能感兴趣的:(微信小程序)