前言
由于前端知识不牢固,以及第一次写uni。一般碰到uni本地存储的问题我一般都是网上查找。而查到的答案一般为:
存储本地为:
uni.setStorageSync('名字', 内容)
获取本地存储则为:
JSON.parse(uni.getStorageSync("名字"))
但是这些都是基于格式为:字段:内容。
即
但这次遇到的是变量名:一大串的对象。
于是这个办法就失效了。
核心方法知识点
比如本地中所存储的数据格式如下:
userInfo:{"type":"object","data":{"id":3,"username":"emp","email":"emp@kr.com","provider":"local","confirmed":false,"blocked":false,"createdAt":"2023-12-30T05:50:13.085Z","updatedAt":"2024-03-21T00:31:09.781Z","mobile":"13511413760","age":null}}
而我想获取的内容为里面的id。
首先我们一样要先获取本地存储中的userInfo
uni.getStorageSync("userInfo")
但这个时候我们不能使用JSON.parse了。而是要用JSON.stringify。二者区别如下。
所以这个时候我们使用username=JSON.stringify(uni.getStorageSync("userInfo"))
打印如下
'{"id":3,"username":"emp","email":"emp@kr.com","provider":"local","confirmed":false,"blocked":false,"createdAt":"2023-12-30T05:50:13.085Z","updatedAt":"2024-03-21T00:31:09.781Z","mobile":"13511413760","age":null}'
然后我们将JSON字符串解析成对象
这个时候我们就可以用JSON.pase了。userInfo=JSON.parse(username)
我们还是打印出来看看,获取到的就是一个对象
{id: 3, username: 'emp', email: 'emp@kr.com', provider: 'local', confirmed: false, …}
接下来我们就可以获取id了。
var id = userInfo.id;
大功告成!
文档仅为自己工作学习中的学习记录。接下来还是要继续学习。巩固基础