У меня есть надстройка Outlook, которая доступна в режиме создания и чтения.Если пользователь проходит надстройку compose, в конце некоторый контент, созданный пользователем, добавляется в тело письма.Вы можете увидеть надстройку compose только при нажатии кнопки «NEW».
В сценарии чтения у меня есть 3 варианта раскрывающегося списка команд надстройки - New, Reply, ReplyAll.Пользователь проходит надстройку, так же, как режим Compose, но в конце я использую displayNewMessageForm, displayReplyForm и displayReplyAllForm , чтобы создать новое электронное письмо в зависимости от выбранного действия.
Пока все отлично работает.Возникает проблема:
Когда пользователь открывает электронное письмо и использует действия reply / replyall / forward Outlook, моя надстройка отображается в новом окне.(Стрелка просто показывает значок моей надстройки) Теперь пользователь нажимает надстройку, завершает необходимые шаги, и в конце я снова использую displayNewMessageForm, displayReplyForm и displayReplyAllForm для создания нового электронного письма.Но на этом этапе вышеуказанные вызовы API не работают.
Сообщение об ошибке: Office.context.mailbox.displayNewMessageForm не является функцией.Хотя я не думаю, что это связано с кодом, вот код для этих вызовов API.
Formdata и параметры правильно сформированы, и он отлично работает наРежим чтения.
if (selectedEmailType == 'New' || selectedEmailType == 'NewEmail') {
Office.context.mailbox.displayNewMessageForm(parameters);
}
if (selectedEmailType == 'ReplyEmail') {
Office.context.mailbox.item.displayReplyForm(
formdata,
function(asyncResult) {
console.log(asyncResult.value);
Office.context.ui.closeContainer();
}
);
} else if ((selectedEmailType == 'ReplyAllEmail')) {
Office.context.mailbox.item.displayReplyAllForm(
formdata,
function(asyncResult) {
console.log(asyncResult.value);
Office.context.ui.closeContainer();
}
);
}