美文网首页
vuex刷新消失问题

vuex刷新消失问题

作者: 光头小青蛙 | 来源:发表于2019-07-18 10:13 被阅读0次

    在项目中会遇到这种问题,同过vuex进行公共的状态管理,在父级页面设置的state,跳转到子页面的时候,是可以拿到state的初始值,但是当子页面刷新的时候,vuexstate赋值会恢复到父页面没有修改的状态(父级页面的修改操作无效)。

    所以解决vuex刷新消失的问题可以通过本地存储来解决,思路就是,刷新的时候判断本地存储有没有存储的键值对(赋值的vuex),如果有,就通过mutation就把本地存储的键值对赋值给state,如果没有,就证明用户是第一次进来,存一个本地存储的键值对。代码如下。

    注意事项,修改vuex的state的唯一途径就是通过mutation修改。

     state: {
        type: '',
      },
     mutations: {
        change(state, val) {
          if (val) {
            state.type = val;
          }
        }
      },
    

    页面使用vuex,this.type是初始页面进来vuex辅助函数映射的state值。

     computed:{
                ...mapState(["type"]),
            },
      created(){
                let type=localStorage.getItem("type");
                if(type){
                    this.change(type)
                }
                else{
                    localStorage.setItem("type",this.type);
                }
            },
    

    相关文章

      网友评论

          本文标题:vuex刷新消失问题

          本文链接:https://www.haomeiwen.com/subject/eysklctx.html