出现错误:TypeError: Cannot read property 'RegisterStatues' of undefined,实际无法调用其他方法和变量,如:在handleRegister
函数中无法调用RegisterStatues
函数。
原因:因为在success
回调函数中,this
指向的不再是Vue实例,而是success
函数本身。因此,您需要在success
函数外部保留正确的上下文,可以使用变量that
或者ES6的箭头函数来解决这个问题。
修改后:
过在success
函数中使用that
来调用RegisterStatues
函数
RegisterStatues: function() {var that = this; // 保存正确的上下文// 其余代码不变
},handleRegister: function(e) {const that = this; // 保存正确的上下文// 其余代码不变wx.request({// 取消成功要更新报名状态success: function(res) {if (res.statusCode === 200) {wx.showToast({title: '取消报名成功',icon: 'success',duration: 2000});// 使用that来调用RegisterStatues函数that.RegisterStatues();} else {wx.showToast({title: '没找到报名信息',icon: 'success',duration: 2000});}},// 其他代码不变});
}