我正在使用Office文档(http://simonjaeger.com/lets-have-a-dialog-about-the-dialog-api/)中的示例实现一个简单的对话窗口。
我的代码运行正常 - 虽然我刚开始。
在控制台中,我看到以下错误:
TypeError:window.external.RegisterEvent不是函数。 (在 'window.external.RegisterEvent(N,T,I,R)', 'window.external.RegisterEvent'未定义)
包含错误的文件是:
/* Word Mac-specific API library */
/* Version: 16.0.8326.3000 */
/* Office.js Version: 16.0.8302.1000 */
/*
是什么促使这个?我该怎么办呢?我的对话框关闭了(这似乎是2016年Mac上的一个问题)。
我正在使用运行Word 15.35的macOS构建。如果我知道在哪里看,我可以分享一些代码......这是从我的任务窗格弹出对话框的简单功能:
$('#editDialogWindowBtn').click(function () {
console.log('trying to open dialog to edit library...');
var dialogUrl = 'https://localhost/test/editLibraryDialog.html';
// Display the dialog.
Office.context.ui.displayDialogAsync(dialogUrl, { width: 30, height: 30, requireHTTPS: true }, function (asyncResult) {
if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) {
// TODO: Handle error.
return;
}
// Get the dialog and register event handlers.
var dialog = asyncResult.value;
dialog.addEventHandler(Microsoft.Office.WebExtension.EventType.DialogMessageReceived, function (asyncResult) {
if (asyncResult.type !== Microsoft.Office.WebExtension.EventType.DialogMessageReceived) {
// TODO: Handle unknown message.
return;
}
// Parse the message.
var data = JSON.parse(asyncResult.message);
showNotification('Hello #Office365Dev', data.name);
// TODO: Do something with the data.
// We got our data, time to close the dialog.
dialog.close();
});
});
});