var that = this 怎么理解?
来源:3-4 实现个人助手功能清单发布
![](http://img1.sycdn.imooc.com/user/54586887000147cc02200220-100-100.jpg)
zhaofeng23
2019-10-04
在小程序的menu.js中:
updateMenuData: function() {
var that = this
wx.request({
url: app.globalData.serverUrl + app.globalData.apiVersion + '/service/menu',
success: function(res){
var menuData = res.data.data
that.setData({
grids: menuData
})
}
})
}
函数开始的地方定义
var that = this,然后再后面调用 that.setData(),为什么不直接用 this.setData() 呢?
我自己试了试不定义that,直接调用this.setData()程序会报错,说this没有setData()方法,为什么会这样呢?请老师和高手们点解,谢谢!
写回答
1回答
-
同学可能对前端不太了解。
that是为了保存页面对象,当进入request之后,this就指向request内的对象了,所以需要提前使用that变量保存页面对象,用来调用setData函数。
20
相似问题