有时前端渲染的数据跟自己后台返回的的不一致,
比如:普通选择器只能是一个普通数组,而 请求返回的数据是一个对象集合
那么就需要进行一系列操作才能进行渲染
//发起请求
wx.request({
url: '你的请求地址',
method: "请求格式",
dataType: "数据类型",
//请求带的参数
data: {
"键": "值"
},
//res是返回的对象 .data就是返回对象的携带数据
success: function(res) { //响应成功事件
//我不需要集合里的某个对象 就给它移除 splice() 删除数组中的某个元素
//index 起始位置 length 删除个数
res.data.hangyeData.splice(index, length)
//小程序 给页面变量的赋值方法
_this.setData({
//给hangyeDatas赋值 冒号后边是请求回来的某个数据
hangyeDatas: res.data.hangyeData
});
//hangyeDatas是对象集合 无法用在选择器里 就用一个新集合hangyeData获取需要显示的一列
for (var i = 0; i < _this.data.hangyeDatas.length; i++) {
_this.data.hangyeData.push(_this.data.hangyeDatas[i].name)
}
//只更改页面数据 不会触发渲染 再使用setData() 才能够触发渲染
_this.setData({
hangyeData: _this.data.hangyeData,
})
//控制台输出 看效果
console.log(_this.data.hangyeData)
}
请求返回的hangyeDatas是对象数组,不能直接用普通选择器,
就把他某列提取到一个新的数组(hangyeData)里去使用选择器,
选择器选择后可以直接获取下标,直接用HangyeDatas[下标] 就可获取到想要的对象了。
以上代码已经非常详细了,用法会有一点繁琐,但是非常实用。