为啥我的赋值不能赋值到deat里面去,这是为什么。为呀为什么。咦,咦!

网友回复:
遇***:
将this改为that,然后在方法开始加入 const that = this
T***:
熊猫,是改哪一个this,(- _-)
杨***:
闭包
Y***:
楼上正解,在request的success函数里,this的上下文已经改变了
T***:
你可以帮我打一下吗。小熊猫。,,,非常感谢
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 });
T***:
啥子是闭包
麦***:
每个function的头名行都写上const that=this,然后里面凡是用到this的地方全部改成that,就oK了。
Y***:
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 });
T***:
你们说的,咋个我有点乱呢
遇***:
按 YJFn 的写法就行了
爱盈利(aiyingli.com)移动互联网具影响力的盈利指导网站。定位于服务移动互联网创业者,移动盈利指导。我们的目标是让盈利目标清晰可见!降低门槛,让缺乏经验、资金有限的个人和团队获得经验和机会,提高热情,激发产品。


