window postMessage

有个需求是,打开新窗口,新窗口点击按钮后,原窗口的列表要刷新,
这个的话,只要能解决页面的通信问题,原窗口只要重新调用一下获取列表的search方法就行了

重点是在 新窗口,
输入

window.opener.postMessage(
      '你要传递的信息字符串',
      window.opener.location.href, //这个是地址,也是字符串
    );

然后原窗口要在 componentDidMount 里面写监听器

window.addEventListener('message', e => {
      if (e.data === '你传递过来的信息字符串') {
        this.handleSearch({});
      }
    });

如果postMessage的第二个参数不传,可能会导致报错


image.png
image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容