最近在开发中遇到一个问题:uniapp获取缓存中的数据无法赋值给data
<script>
export default {
data() {
return {
text: null
}
},
onLoad() {
uni.getStorage({
key: 'text',
success: function (res) {
this.text = res.data
}
});
}
}
</script>
如果这样赋值是无法赋值到text中去的
console.log(text)出来的内容是null
<script>
export default {
data() {
return {
text: null
}
},
onLoad() {
var self = this
uni.getStorage({
key: 'text',
success: function (res) {
self.text= res.data
}
});
}
}
</script>
这样才是正确的赋值方法
因为在uni.getStorage方法内this被重定向了,不再指向外部的data了,这时候就需要在uni.getStorage方法外部new一个this才可指向data