小程序获取用户手机号,然后需要保存在小程序端(获取两次手机号解密两次会消耗大量资源),在另一个页面访问,我想到了放进域对象里面,当然正式的表达是缓存在本地的key中在其他js获取本地缓存的key的value就可以了。这和我之前做手机APP的时候将数据存入本地用的localstorage(是存入本地和这个不同)那种是相通的,顿时有种豁然开朗的感觉。
官方文档存取数据https://developers.weixin.qq.com/miniprogram/dev/api/wx.setStorageSync.html
看了看写了写还是不行,就了解了下同步异步上面提供的同步异步的方法都是一样的啊(其实是同步和异步获取数据的问题),取数据的时候方法不同,同步直接定义赋值就好了,异步为什么数据获取不到呢?我还是不知道异步该如何写,有小伙伴知道的可以留言告诉我谢谢!
取数据的时候wx.getStorageSync('key')是同步的只要你存储的key的value发生变化就会覆盖掉原来的,在当前的page里面定义一个变量,然后赋值给这个变量就可以随意调用了:
send: function (e) {
var that = this;
var phone = wx.getStorageSync('phone');//wx.getStorageSync(key),获取本地缓存
this.setData({
phone(当前page中定义的变量): phone
})
console.log("-----"+phone);
}
此时调用phone就有效果了,至于另一个异步调用,只能在那个方法里面使用。