getAsync()无法在Mac上的Outlook加载项中使用

时间:2017-12-04 20:27:16

标签: office-js

我正在尝试从Outlook for Mac的加载项中的撰写屏幕获取电子邮件文本。我在Compose屏幕中显示的无UI按钮中设置了代码。加载项正确加载(按钮出现在“撰写”屏幕中),但单击加载项按钮时没有任何反应。

这是我的代码:

function scanText(event) {
  try {
    Office.context.mailbox.item.body.getAsync(Office.CoercionType.Text, function(text) { 
      if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) {
      } else {
        console.log('quando');
        event.completed();
      }
    });
  } catch (err) {
    showError(err);
    event.completed();
  }
}

我希望' quando'在控制台上打印,但我在Vorlon控制台上看不到任何东西。我错过了什么?我不认为这是一个需求问题,因为Requirements页面指出Outlook 2016 for Mac支持所有集:

enter image description here

但还有什么呢?

其他一些背景资料:

  • 我使用these instructions
  • 设置了Vorlon
  • 我在本地托管Web服务器,并已设置我的系统以接受自签名证书。
  • 我正在使用Outlook for Mac v15.40(171108),在Exchange 2013 SP1上运行。

1 个答案:

答案 0 :(得分:1)

在代码中,当在if条件中使用“ asyncResult”检查结果时,回调中将“ text”作为参数。如果您开始在严格模式下工作,则可能会因为asyncResult未定义而收到错误消息。

只需用asyncResult替换回调中的文本即可。另外,在if条件中记录错误,以了解asyncResult状态是否失败。