Outlook 加载项 API 不会在 Firefox/Chrome 上持续触发 ItemChange 事件

2023-11-29

我们已在 Outlook 加载项的清单中启用任务窗格固定,并注意到除了 Windows Outlook 2016 客户端之外,现在 Outlook Office Online 中也提供固定支持。

但是,那ItemChange切换邮件项目时,事件似乎没有一致地触发(我无法辨别它何时被触发的任何韵律或原因)。

我们正在使用以下方式侦听此事件addHandlerAsync method。这是一个错误吗?


我遇到了同样的问题。考虑重新注册事件处理程序并且它起作用了。

这是我正在使用的代码。

Office.onReady(function() {
    //console.log('In Office.onReady');

    if(!Office.context.mailbox) {
        console.log('Run inside Outlook to be able to use it.');
        return;
    }
    console.log('Running in Office Add-in');

    // Set up ItemChanged event
    Office.context.mailbox.addHandlerAsync(Office.EventType.ItemChanged, selectedMailItemChanged);
    console.log('Item Change event registered.');

    doSomething(Office.context.mailbox.item);
    //console.log('Page initialized');
});

function selectedMailItemChanged(eventArgs) {
    console.log('Another email message selected');

    if(Office.context.mailbox.item != null) {
        doSomething(Office.context.mailbox.item);
    }
    else {
        console.log('No email is selected.');
        Office.context.mailbox.removeHandlerAsync(Office.EventType.ItemChanged, {handler: selectedMailItemChanged}, function(result) {
            console.log('Item Change event unregistered.');
            Office.context.mailbox.addHandlerAsync(Office.EventType.ItemChanged, selectedMailItemChanged);
            console.log('Item Change event re-registered.');
        });
    }
}

function doSomething(item) {
    // do something.
}

但是,在另一种情况下,您可以在加载项仍处于打开状态时从加载项内导航到另一个网页,请参阅这个答案.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Outlook 加载项 API 不会在 Firefox/Chrome 上持续触发 ItemChange 事件 的相关文章

随机推荐