onLoad() {
var tel = uni.getStorageSync('tel')
},
methods: {
login(e){
var tel = uni.setStorageSync('tel','123456')
}
}
- 发布:2023-01-13 08:54
- 更新:2023-01-17 17:51
- 阅读:748
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 3.6.17
手机系统: Android
手机系统版本号: Android 12
手机厂商: OPPO
手机机型: 真我gt neo3 150w
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
App下载地址或H5⽹址: https://linyimart.com/sc.apk
示例代码:
操作步骤:
onLoad() {
var tel = uni.getStorageSync('tel')
},
methods: {
login(e){
var tel = uni.setStorageSync('tel','123456')
}
}
onLoad() {
var tel = uni.getStorageSync('tel')
},
methods: {
login(e){
var tel = uni.setStorageSync('tel','123456')
}
}
预期结果:
预期在结束完app进程后,再次进入app页面onload的时候会获取到tel的值
预期在结束完app进程后,再次进入app页面onload的时候会获取到tel的值
实际结果:
实际上结束完app进程后打开app就没有值了
实际上结束完app进程后打开app就没有值了
bug描述:
onLoad() {
var tel = uni.getStorageSync('tel')
},
methods: {
login(e){
var tel = uni.setStorageSync('tel','123456')
}
}
在第一次登录的方法设置数据缓存tel,结束app进程或两次返回退出app回到手机主页面后,再次打开app,进入当前页面用uni.getStorageSync('tel')是获取不到login方法中已经设置过的tel,我又尝试用sqlite写到本地数据库,发现退出app,再次进入获取数据的表也是空的(可能是我还不会用sqlite吧),但是我看数据缓存最下面写的是这个: App端为原生的plus.storage,无大小限制,不是缓存,是持久化的,持久化的话获取不到,应该是bug
冬至D (作者)
3.6.17有没有问题现在不清楚,因为我升级到3.6.18了,目前测试发现是没有问题一切正常
2023-01-28 16:16
冬至D (作者)
感谢您的回复,辛苦了
2023-01-28 16:18