在store文件创建一个文件然后里面创建一个Search.js,放置vuex中,作为全局的共享数据。但是在页面刷新的时候vuex里的数据会重新初始化,导致数据丢失。因为vuex里的数据是保存在运行内存中的,当页面刷新时,页面会重新加载vue实例,vuex里面的数据就会被清空。防止vuex中的数据丢失保存到浏览器缓存中localStorage这样不管浏览器怎么刷新也不会
state: {
protocolId: JSON.parse(localStorage.getItem('protocolId')) || '',
},
mutations: {
SearchDetails(state, data) {
state.protocolId= data
localStorage.setItem('protocolId', JSON.stringify(data))
},
在vue页面调用接口存值
this.$store.commit('down/Search', res.data.result.protocolId)
在vue页面去除vuex里面存的数据
this.$store.state.dropdown.protocolId