为啥我的赋值不能赋值到deat里面去,这是为什么。为呀为什么。咦,咦!
网友回复:
将this改为that,然后在方法开始加入 const that = this
熊猫,是改哪一个this,,,,,,,(- _-)
闭包
楼上正解,在request的success函数里,this的上下文已经改变了
你可以帮我打一下吗。小熊猫。,,,非常感谢
onLoad: function (options) {
var rs = [];
wx.request({
url: ',
header: {
'content-type': 'application/json'
},
success: function (res) {
console.log(res.data.showapi_res_body.pagebean.songlist);
rs = res.data.showapi_res_body.pagebean.songlist;
this.setsj(rs);
}
});
},
setsj: function (shuju) {
console.log(shuju);
this.setData({
recommends: shuju
});
啥子是闭包
每个function的第一行都写上const that=this,然后里面凡是用到this的地方全部改成that,就oK了。
onLoad: function (options) {
const that = this
var rs = [];
wx.request({
url: ',
header: {
'content-type': 'application/json'
},
success: function (res) {
console.log(res.data.showapi_res_body.pagebean.songlist);
rs = res.data.showapi_res_body.pagebean.songlist;
that.setsj(rs);
}
});
},
setsj: function (shuju) {
console.log(shuju);
this.setData({
recommends: shuju
});
你们说的,咋个我有点乱呢
按 YJFn 的写法就行了