this
是JavaScript中的一个关键字,代表当前操作对象
JavaScript的函数内部如果调用了this
,那么这个this
到底指向谁还要视情况而定。
var that=this
就是用一个that
变量首先捕获正确的this
对象,再在函数内部进行调用
下面是个小程序的例子:
我需要在函数内部调用一个函数,一般是用 this.uploadImg
调用, 但在调用位置,this
指向是undefined
,所以需要在正确的位置将this
存储到变量中,这样在函数内部用that.uploadImg()
来调用函数即可
showMenu: function(e){
let that = this //存储this对象
wx.showActionSheet({
itemList: ['上传', '删除'],
success (res) {
console.log(this)//这个位置的this是undefined
that.uploadImg()
},
fail (res) {
console.log(res.errMsg)
}
})
},
/*上传图片*/
uploadImg: function (e) {
//code...
},