使用-localStorage-实现多页面通信

29次阅读

共计 422 个字符,预计需要花费 2 分钟才能阅读完成。

需求背景

两个页面 A、B,B 页面关闭时,通知 A 页面请求接口刷新列表页

实现

使用 storage 事件实现页面通信,约定好通信的 key,这里我们假定 key 为 refresh_list

A 页面 监听 storage 事件

mounted() {window.addEventListener('storage', this.otherWindowListener, false);
},
methods: {otherWindowListener(event) {if (event.key === 'refresh_list'){// do something};
  },
},

B 页面,当保存时,设置约定好的 localStorage key 值,关闭页面

methods: {close() {localStorage.setItem('refresh_list', new Date().getTime());
    try {window.close();
      } catch (e) {console.log(e);
    }
  },
},

正文完
 0