请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

var that = this 怎么理解?

在小程序的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回答

咚咚呛 2019-10-06 22:26:25

同学可能对前端不太了解。

 that是为了保存页面对象,当进入request之后,this就指向request内的对象了,所以需要提前使用that变量保存页面对象,用来调用setData函数。

2 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号