office javascript API 中关闭对话框的逻辑。 (Outlook 加载项)

Logic of dialog closed in office javascript API. (Outlook add-in)

如何检查outlook插件中的对话框是否关闭?

我想在关闭对话框后清除浏览器的本地存储。

我正在使用 Office.context.ui.displayDialogAsync 进行对话。

创建对话框时需要获取对话框句柄,并添加对话框关闭事件监听器:

export async function displayDialogAsync (dialogUrl: string): Promise<void> {
    return new Promise<void>(resolve => {

        const dialogClosed = async (_: any): Promise<void> => {
            // do whatever you need when the dialog is closed  
            resolve();
        };


        Office.context.ui.displayDialogAsync(url, dialogOptions, (result: Office.AsyncResult) => {
            dialog = result.value;
            dialog.addEventHandler(Office.EventType.DialogEventReceived, dialogClosed);
        });
    });
}