我正在使用新的Office-JS apis开发Outlook插件,在构建身份验证流程时,我发现在Outlook 2016 for Mac案例中,对话框系统似乎无法正常工作。 / p>
很明显,我们正在使用Office Insider Fast Track版本,因为它对Office-JS API提供了大大改进的支持。
我经历了这个特定部分的几次迭代(其中大多数在Windows客户端和Mac和Win上的Web客户端都运行良好),并且没有运气。场景是:
步骤1到5在所有平台上都能正常运行。第6步拒绝使用Outlook for Mac。最初,此流程是使用本机js window.open和window.postMessage apis构建的。如上所述,除了Outlook Mac之外,这种方式无处不在,其中,API似乎忽略了窗口选项,只是在任何打开的浏览器中打开新选项卡中的url并且从不设置子窗口引用(window.open的结果为null )。
如果不这样做,我按照SO上的建议来使用Office功能,displayDialogAsync和messageParent。经过一些初步的障碍之后,这也是设置并在每个平台上运行,除了Outlook Mac。
由于Mac Outlook中没有开发工具或JS控制台支持,我按照Howto: Outlook 2016 for Mac - Debugging/View Console Logs in Outlook Add-in中的建议进行操作,并设置Vorlon尝试获取一些上下文,添加大量日志记录点以尝试获取一些上下文。不幸的是,虽然Vorlon确实将我的身份验证登陆页面作为客户端,并且看到了Office界面,但我的控制台输出都没有显示出来,看起来好像JS根本没有运行。
此时我不确定下一步该尝试什么。有没有人遇到过这个问题,或者让它在Outlook 2016 for Mac客户端上运行?
澄清背景:
谢谢。
答案 0 :(得分:3)
Outlook Mac中的这个问题已在几个月前修复过。如果有人在最近的Outlook Mac版本中仍然遇到此问题,请回复内部版本号。
答案 1 :(得分:0)
在使用以下OfficeJS dist的Outlook for Mac 2016的v16.17(180909)版本中未定义Office.context.ui: https://appsforoffice.microsoft.com/lib/1/hosted/office.js