如何将模型从Word 2016传递到Office 365对话框?

时间:2017-03-03 06:56:59

标签: angularjs office365 office-js

我正在玩MS Word的Office 365加载项。我有一个对话框来操纵选定的单词图像。我需要将该图像(可能是Base64的值)传递给我的对话框,以便我可以在替换回单词(相同位置)之前使用图像。

我使用下面的代码来显示弹出窗口:

Office.context.ui.displayDialogAsync("https://" + location.host + "/Views/ImageManager.html", { width: 64, height: 55, requireHTTPS: true }, function (asyncResult) {
    dialog = asyncResult.value;
    dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
    if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) {
        return;
    }
});

我想做什么?

当用户选择要在word文档中播放的图像并单击功能区按钮打开此对话框时,我需要将该图像传递到对话框以显示在对话框中。

如何将我的Image模型传递给对话框?

1 个答案:

答案 0 :(得分:1)

至少有两种方法可以将内容传递给对话框:

  • 将其作为查询参数传递给您传递给displayDialogAsync()
  • 的网址
  • 将其存储在主机脚本的window.localStorage中,并在对话框页面的脚本中从那里检索。

更新:您可以对此Office Dev用户语音请求进行投票,以便在对话框与其主机之间进行更好的通信:https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/17196659-improve-custom-dialog