vuex中,第一次打开页面,刷新都会进行初始化,他是一个响应式数据驱动源。

例如:state:{  data:'abc'  }。

父级页面改变这个值时,在引用的子级页面同时发生改变,并且改变之后不受路由跳转的影响而进行初始化。

只会受页面第一次加载,刷新,Windows.location.href的影响而进入初始化!

 

使vuex不受页面影响生命周期状态:如userInfos用户状态

使用本地缓存,浏览器关闭,用户状态消失。

export default new Vuex.Store({
    state: {
        UserInfos: JSON.parse(sessionStorage.getItem('UserInfos')),
    },
    mutations: { 
        setUserInfos(state){
            state.UserInfos:JSON.parse(sessionStorage.getItem('UserInfos'))
        }
    }
)}
//在vuex中管理状态,使用session,避免页面刷新数据消失,
sessionStorage.setItem('UserInfos',JSON.stringify(data));
//commit一次,再次让vuex状态重新获取一次值对象。
this.$store.commit('setUserInfos')

 

Logo

前往低代码交流专区

更多推荐