小程序this指向问题

如图所示,这个this我已经打印出来时page了,为什么还是提示下面的错误

clipboard.png

clipboard.png

回复
阅读 4.6k
4 个回答

你这是在app.js里面吧,只有在page里能用this.setData,如果你想把数据添加到globalData,this.globalData.prop=data就可以了

最关键的一句话是箭头函数里的this,在定义时候就已经决定而不是执行的时候,这里面this已经不是指向page,没有setData()方法,最直接的方法先把success改成:
success: function(res){this.setData()}

你重新定义下this, 例如 var self = this 或者 var that = this 试试

wx.request上面添加一条:var _this = this; ,在下面需要使用this的地方就使用_this代替便好了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏