首页 > 解决方案 > 有没有办法在 Outlook Web 插件中处理浏览器返回事件?

问题描述

我正在使用 React 和 TypeScript 开发 Outlook Web 插件。该加载项是一个单页应用程序,并有自己的按钮用于向后和向前导航。它在 Outlook 中作为任务窗格加载。当前的行为是,当用户在加载任务窗格时单击浏览器后退按钮时,它只会关闭。

我想要实现的是加载项侦听浏览器中的后退按钮单击并相应地处理它,即通过在任务窗格中导航而不是关闭它。

我尝试在 React 组件中收听“popstate”事件:

 public componentDidMount() {
    window.addEventListener('popstate', () => {
        console.log("Back button clicked.");
        this.props.onBackButtonClicked();
    });
}

这种方法的问题是“popstate”事件永远不会触发,因为任务窗格加载项托管在 iframe 中。我无法控制 iframe 本身,因为所有 Outlook 网络插件都托管在 iframe 中。我也无法访问 iframe 的父窗口,因为它位于不同的域中。

Outlook Web 加载项是否有办法获得有关用户单击浏览器后退按钮的通知?

标签: reactjsoutlookoffice-jsoutlook-addinoffice-addins

解决方案


目前,收到有关用户单击浏览器后退按钮的通知的功能插件不是产品的一部分。我们在 <a href="https://officespdev.uservoice.com/forums/224641-general/category/131778-outlook-add-ins" rel="nofollow noreferrer">user- 上跟踪 Outlook 加载项功能请求语音页面。请在此处添加您的请求。当我们进行规划过程时,会考虑用户语音的功能请求。


推荐阅读