解决vuex中数据刷新消失的问题
解决方法是在获取到数据往 store 中存储时,利用 window.localStorage.setItem(‘key’, value) 也存储一份相同数据。当在获取数据时判断存储的数据是否为空(如果是数组就判断长度是否为0,总之这儿就是判断),若不为空(数组长度不为0)直接获取,否则利用 window.localStorage.getItem(‘key’) 来获取。例如vue组件中:this.$
·
解决方法是在获取到数据往 store 中存储时,利用 window.localStorage.setItem(‘key’, value) 也存储一份相同数据。当在获取数据时判断存储的数据是否为空(如果是数组就判断长度是否为0,总之这儿就是判断),若不为空(数组长度不为0)直接获取,否则利用 window.localStorage.getItem(‘key’) 来获取。
例如
vue组件中:
this.$store.commit('setUserId', item.id)
window.localStorage.setItem('userId', JSON.stringify(item.id))
store中:
getters: {
loginIn: state => {
let loginIn = state.loginIn
if (!loginIn) {
loginIn = JSON.parse(window.localStorage.getItem('loginIn') || null)
}
return loginIn
},
}
更多推荐
已为社区贡献3条内容
所有评论(0)