我有一个应用程序(命名为 B),它被另一个主应用程序(命名为 A 或父应用程序)嵌入到 iframe 中。
So: App A-- // domain of A: https://mydomain/mainApp
|___ App B in Iframe // domain in B: https://mydomain/appB
问题是:然后主/父应用程序有一个导航菜单。单击一个项目时,会创建一个 Iframe,其中 SRC ATTRIBUTE 加载 App B。
当用户点击应用程序 A 中菜单的另一个选项时,Iframe 被销毁,并出现 React 中的另一个内容视图,替换 Iframe。
这样做时,用户在 B 中输入的所有数据都消失了,因为我无法触发 B 中的保存事件。
我在 iframe 应用程序中添加了以下事件处理程序:
window.addEventListener("beforeunload", function (e) {
// Trigger here the save settigns event inside B
});
但是当用户通过主应用程序菜单导航时,以前的代码永远不会触发。如我所见,App A 中的导航菜单会更改浏览器中的 URL(但似乎是 SPA React.js 路由或类似路由,没有真正的重定向)。
问题是:Iframe 能否检测到何时卸载/销毁以首先触发 Ajax 中的保存设置?PS:我无权访问 App A 代码。
提前致谢