// 1. main.js 重写 localStorage的 setItem
// 重写 setItem,为了方便监控 localStorage
const Tools = function dispatchEventStroage() {
const signSetItem = localStorage.setItem;
localStorage.setItem = function (key, val) {
let setEvent = new Event("setItemEvent");
setEvent.key = key;
setEvent.newValue = val;
window.dispatchEvent(setEvent);
signSetItem.apply(this, arguments);
};
};
Vue.use(Tools);
// 2. 页面使用 window.addEventListener 就可以检测到 localStorage 的值了,获取到变化的值,就可以更新页面的数据了
const that = this;
// queryqueueCount 为存到localStorage的key
window.addEventListener("setItemEvent", function (e) {
if (e.key === "queryqueueCount") {
// e.newValue(为新的数据)
// 更新页面的数据;
}
});