Надстройка Office Окно Office.context.ui.displayDialogAsync не будет отображаться с активированной функцией «При отправке» - PullRequest
0 голосов
/ 09 октября 2019

Я пытаюсь добавить диалоговое окно Office к учебнику «Нет отправки» . Я могу отлично запустить учебник, и заблокированные слова будут заблокированы, как и ожидалось. Однако, когда я пытаюсь изменить учебник, чтобы добавить displayDialogAsync (), код диалога полностью игнорируется, и я вообще никогда не вижу всплывающее окно. Вот мои модификации с displayInIFrame, установленным в false:

function validateBody(asyncResult) {

        Office.context.mailbox.item.notificationMessages.addAsync('NoSend', { type: 'errorMessage', message: 'Processing mail about to be sent.' });
            var dialog

            var url = "https://localhost:3000/test.html"
            Office.context.ui.displayDialogAsync(url, { width: 80, height: 60, displayInIframe: true }, function(result) {
                if (result.status === Office.AsyncResultStatus.Failed) {
                        console.log("FAILED: " + result.error.message)
                        reject(new DialogError(result.error.message, result.error))
                }
                 dialog = result.value
          dialog.addEventHandler(Office.EventType.DialogMessageReceived, args => {
                                    console.log("MSG RECVD")
                                    console.log(args.status)
                                    if(true){ // just for testing; both branches cause the Send button to grey out
                                            asyncResult.asyncContext.completed({ allowEvent: true });
                                    }
                                    else {
                                            asyncResult.asyncContext.completed({ allowEvent: false });
                                    }
                            })
                    dialog.close()

            })


   //asyncResult.asyncContext.completed({ allowEvent: true });
        }

Если я изменю displayInFrame на true, я выполню превращение в функцию, и я вижу ошибку:

Операция завершилась неудачно, поскольку у этой надстройки уже есть активный диалог.

Я проверил, что мой тестовый HTML существует и доступен браузеру. Я также проверил этот вопрос .

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