我的目的就是想把剪切板的内容放到textarea中 我觉得wx.getClipboardData这个方法应该是异步的 下面这样写一直都是空的 所以我用promise封装了一下 想在then中再赋值
但是我在then中处理this.setData时发现this.data.copy2还是空的 是我promise写的不对吗
<textarea maxlength="-1" value="{{copy}}"></textarea>
const app = getApp()
Page({
data: {
copy: '',
copy2: ''
},
test () {
wx.getClipboardData({
success: function (res) {
this.copy2 = res.data
}
})
console.log(this.data.copy2) //一直都是空的
this.setData({
copy: this.data.copy2
})
},
onLoad: function () {
this.test()
}
})
封装后
test () {
return new Promise((resolve, reject)=>{
wx.getClipboardData({
success: function (res) {
this.copy2 = res.data
resolve()
}
})
})
}
onLoad: function () {
this.test().then(() => {
console.log(this.data.copy2)
this.setData({
copy: this.data.copy2
})
})
}
test () {
}
onLoad: function () {
}