如何避免在Vuex中存储复杂参数如对象数组等刷新数据丢失的问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计265个文字,预计阅读时间需要2分钟。
在搜索页面获取结果后,跳转到结果页并携带搜索结果,经过多种尝试后,最终采用Vuex与sessionStorage结合的方法。在mutations中通过`setResultValue(state, flag)`实现:
javascriptsetResultValue(state, flag) { sessionStorage.setItem(resultValue, flag ? JSON.stringify(state.result) : null);}
我需要在搜索页拿到结果之后跳转到搜索结果页并携带搜索结果
尝试过几种方法之后最终采用vuex+sessionStorage结合的方法在mutations中
setResultValue(state,flag){ sessionStorage.setItem("resultValue", JSON.stringify(flag)) state.resultValue = flag }
在getters中
getResultValue getResultValue(state){ state.resultValue = sessionStorage.getItem("resultValue") return state.resultValue }
在跳转后的页面获取这个数据
this.resultValue = JSON.parse(store.getters.getResultValue)
这里可以看到我们用了JSON.stringify和JSON.parse是因为sessionStorage存储对象的需要,不然在页面获取时只能得到:“[object,object]”
以上这篇vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。
本文共计265个文字,预计阅读时间需要2分钟。
在搜索页面获取结果后,跳转到结果页并携带搜索结果,经过多种尝试后,最终采用Vuex与sessionStorage结合的方法。在mutations中通过`setResultValue(state, flag)`实现:
javascriptsetResultValue(state, flag) { sessionStorage.setItem(resultValue, flag ? JSON.stringify(state.result) : null);}
我需要在搜索页拿到结果之后跳转到搜索结果页并携带搜索结果
尝试过几种方法之后最终采用vuex+sessionStorage结合的方法在mutations中
setResultValue(state,flag){ sessionStorage.setItem("resultValue", JSON.stringify(flag)) state.resultValue = flag }
在getters中
getResultValue getResultValue(state){ state.resultValue = sessionStorage.getItem("resultValue") return state.resultValue }
在跳转后的页面获取这个数据
this.resultValue = JSON.parse(store.getters.getResultValue)
这里可以看到我们用了JSON.stringify和JSON.parse是因为sessionStorage存储对象的需要,不然在页面获取时只能得到:“[object,object]”
以上这篇vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

