微信小程序—success回调函数为什么使用this.setData报错
在success函数中执行this.setData报错
是因为success方法指向闭包,所以this属于闭包,由此在success回调函数里是不能直接使用this.setData()的,如果我们要使用的话,可以在闭包之外先把this赋值给另一个变量。
bindViewTap: function() {
let self = this
wx.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success(res) {
// tempFilePath可以作为img标签的src属性显示图片
// 临时路径,每次获取都不一样
const tempFilePaths = res.tempFilePaths
self.setData({userPic: tempFilePaths[0]})
// success方法指向闭包,所以this属于闭包,由此在success回调函数里是不能直接使用this.setData()的,如果我们要使用的话,可以在闭包之外先把this赋值给另一个变量。
}
})
},
参考:参考链接
更多推荐
微信小程序—success回调函数使用this.setData报错的解决方法
发布评论