我当前正在从Outlook中功能区上的按钮调用对话框。该对话框可以正常工作,没有任何问题,但是即使在打开/关闭对话框之后,也会出现消息“ ...加载项正在处理您的请求”。
这里是对话框的调用方式。。
function openDialog(event) {
Office.context.ui.displayDialogAsync('https://xxxx.azurewebsites.net', { height: 80, width: 92 },
function (asyncResult) {
dialog = asyncResult.value;
dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
event.completed();
}
);
}
function processMessage(event) {
event.completed();
}
如何避免此消息?试图也关闭EventHandler回调(processMessage)中的事件,但不起作用。
对于addEventHandler,如果要在关闭对话框时完成事件,则可以使用DialogEventReceived事件,该事件在关闭对话框或卸载对话框时触发。另外,处理程序函数(processMessage)应该使用与event不同的参数名称,以免覆盖变量。
function openDialog(event) {
Office.context.ui.displayDialogAsync('https://xxxx.azurewebsites.net', { height: 80, width: 92 },
function (asyncResult) {
dialog = asyncResult.value;
dialog.addEventHandler(Office.EventType.DialogEventReceived, processMessage);
event.completed();
}
);
}
function processMessage(args) {
event.completed();
}