vue组件里如何获取localstorge里的值,并转化成json对象保存在data里……
localStorage
是 window 上的对象,相当于保留字(当然你也可以改写或者扩展),并不耦合于任何框架。如果你调用不了,可能是被改写(这么变态吗),当然如果是用 ts,那就要相应的类型断言了。
直接使用:获取:localStorage.getItem("name") 设置:localStorage.setItem("name","xiaoya") 删除:localStorage.removeItem("name")
之前回答过类似问题:vue 登录存localStorage的方法,希望对你有所帮助。
补充下localStorage 知识点:
JS对象
读取形式:
localStorage.name
添加/修改
localStorage.name = "xuanyuan"
其中"xuanyuan"只能是字符串形式(目前为止只支持字符串)。所以存储时是JSON对象时需要执行下JSON.stringify,所以获取时需要执行下JSON.parse
删除
detele localStorage.name
API
获取键值对数量
localStorage.length
读取
localStorage.getItem('name'), localStorage.key(i)
添加/修改
localStorage.setItem('name','xuanyuan')
删除对应键值
localStorage.removeItem('name')
删除所有数据
localStorage.clear()
顺便说下,localStorage有效期是永久的。一般的浏览器能存储的是5MB左右。sessionStorage api与localStorage相同。
sessionStorage默认的有效期是浏览器的会话时间(也就是说标签页关闭后就消失了)。
localStorage作用域是协议、主机名、端口。(理论上,不人为的删除,一直存在设备中)
sessionStorage作用域是窗口、协议、主机名、端口。
JS中通过window.localStorage对象可以直接使用
//获取localStorage中的值
var obj = window.localStorage.getItem("item")
//转化为json对象
var obj = JSON.parse(obj)
//将对象保存到localStorage中
var obj = JSON.stringify(someObj);
window.localStorage.setItem('item',obj);
9 回答1.7k 阅读✓ 已解决
6 回答1.5k 阅读
3 回答1.4k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
3 回答1.1k 阅读
2 回答1.2k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
原来怎么获取就怎么获取。和vue有什么关系嘛。。。。