我正在使用React和TypeScript开发Outlook Web加载项。加载项是一个单页应用程序,具有自己的按钮,可以用于前后导航。它在Outlook中作为任务窗格加载。当前的行为是,当用户在加载任务窗格时单击浏览器后退按钮时,它只是关闭。
我试图实现的是,外接程序监听浏览器中的后退按钮单击并相应地进行处理,即通过在任务窗格中向后导航而不是将其关闭。
我已经尝试在React组件中监听'popstate'事件:
public componentDidMount() {
window.addEventListener('popstate', () => {
console.log("Back button clicked.");
this.props.onBackButtonClicked();
});
}
这种方法的问题是,当任务窗格加载项托管在iframe中时,'popstate'事件永远不会触发。由于所有Outlook Web插件都托管在iframe中,因此我无法控制iframe本身。我也无法访问iframe的父窗口,因为它位于其他域中。
Outlook Web加载项是否可以通过通知用户单击浏览器的后退按钮?
[当前,您所请求的功能插件已收到有关用户单击浏览器后退按钮的通知,这不是产品的一部分。我们在user-voice页面上跟踪Outlook加载项功能请求。请在此处添加您的请求。在我们进行规划过程时,将考虑对用户语音的功能请求。