解决vuex不能持续存储的问题


简单说明一下VUEX的功能

在使用vue的过程中,我们经常会使用vuex来存储全局数据,这样我们在各个组件都能很放便的调用

缺陷

vuex的内容值是储存在内存条里的,只能作为一个临时数据,无法持久化(当你不想重复或无法多次请求获取数据时,例:登录信息)
请求成功后返回的数据
获取成功.png
每次刷新页面,之前的数据都会丢失
刷新后数据为空
空数据.png

解决的办法

使用本都存储localStorage

//在获取到登录信息后
//我们使用localstorage将登录信息存储在本地做持续化储存
//在存储之前我们需要准换成JSON格式
localStorage.setItem('user',JSON.stringify(state.user))

zvFZQO.png

之后我们需要数据的时候就可以在localstorage里面拉出来使用

export default {
        data() {
            return {
                // 创建一个存储user的对象
                user:{},

            }
        
        },
    created(){
         // 当页面渲染完成时,获取localstorage里面的user并赋值给data的user
         this.user = JSON.parse(localStorage.getItem('user'))
         console.log(this.user,'this.user');
    }

刷新一下,看一下是否获取到了

成功

获取成功.png


文章作者: John Doe
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 John Doe !
  目录