Office.context.ui.messageParent не работает в Outlook 2016 для Windows? - PullRequest
0 голосов
/ 24 октября 2019

Я устраняю проблему, из-за которой всплывающее окно, созданное надстройкой Outlook, не связывается с его родителем при использовании Office.context.ui.messageParent() в клиенте Outlook для настольных ПК для Windows.

Проблема началасьпроисходит после обновления Windows 10 (1903). Используемая версия клиентского рабочего стола Outlook: 16.0.12026.20344. Я загружаю Office JS Api через CDN, предоставленный в их репозитории Github.

Сначала я думал, что во всплывающем окне не было регистрации правильных событий, но событие возникло (dialogEventReceived) когда всплывающее окно закрыто, оно регистрируется и обрабатывается правильно.

После вызова Office.context.ui.messageParent().

нет зарегистрированных ошибок. Я убедился, что всплывающее окно (обработка аутентификации в этом случае) корректно загружает API Office JS и выполняет инициализацию.

Все соответствующие домены приложения были правильно перечислены в файле манифеста надстройки.

Office.context.ui.displayDialogAsync(fullUrl,
    {
        height: 60,
        width: 20,
        displayInIframe: false
    }, function (asyncResult) {
        if (asyncResult.status === Office.AsyncResultStatus.Failed) {
                //showNotification(asyncResult.error.code = ": " + asyncResult.error.message);
            } else {
            dialog = asyncResult.value;
            dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
            dialog.addEventHandler(Office.EventType.DialogEventReceived, processDialogEvent);
        }
    });

Office.initialize = function() {
  console.log('oauth2 redirect');
  debugger;
  Office.context.ui.messageParent(window.location.href);
};

Ожидаемое поведение - всплывающее окно вызывает событие dialogMessageReceived.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...