如果需要即使获取sessionStorage的值 在vue中操作如下
1.main.js中
import Vue from 'vue' import App from './App' import ElementUI from 'element-ui'; import 'element-ui/lib/theme-chalk/index.css'; import router from './router' Vue.config.productionTip = false Vue.use(ElementUI); /* eslint-disable no-new */ new Vue({ el: '#app', router, components: { App }, template: '<App/>' }) Vue.prototype.resetSetItem = function (key, newVal) { if (key === 'formState') { // 创建一个StorageEvent事件 var newStorageEvent = document.createEvent('StorageEvent'); const storage = { setItem: function (k, val) { sessionStorage.setItem(k, val); // 初始化创建的事件 newStorageEvent.initStorageEvent('setItem', false, false, k, null, val, null, null); // 派发对象 window.dispatchEvent(newStorageEvent) } } return storage.setItem(key, newVal); } }
2.存储值的时候需要按照上面main.js中定义好的方法使用
this.resetSetItem('formState', val);
3.另一个地方取值
created(){ window.addEventListener('setItem', ()=> { var val = sessionStorage.getItem('formState'); }) },