我正在尝试在Office 365的Outlook 2016版本(最近更新的,EXE版本16.0.8431.2107)中运行的Outlook JS插件中显示一个对话框。
我在F12调试器控制台中输入的代码如下:
Office.context.ui.displayDialogAsync(
window.location.origin,
{width: 500, height: 500},
function(result) {
console.log(result)
}
);
返回的结果是
error:{
code: 5001,
message: "Ein interner Fehler ist aufgetreten.",
name: "Interner Fehler"
},
status: "failed",
value: undefined
并且没有打开任何对话框。
我是否忽略了一些奇怪的要求?
答案 0 :(得分:2)
如果你能够F12调试你的脚本,你可以验证window.location.origin的输出。
Office加载项基于IE并使用特殊的安全设置。在这种情况下,IE可能会禁用window.location.origin。
在我自己的机器上,我可以看到它返回' undefined',所以在这种情况下你将undefined作为url传递,并且API失败。
如果您安装了最新的IE,请确保在您的html页面中,它具有以下元标记。它将强制Office加载项使用最新的IE设置,而不是兼容的视图模式。
<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
答案 1 :(得分:1)
问题已修复。
我说
最近更新了
并且忘记提到我在更新和测试之间没有重启(Office没有告诉我)。似乎重新启动就可以了;我现在正在获得一个对话窗口。