将消息从对话框(平均堆栈站点)发送到任务窗格
Send a message from Dialog box (mean-stack site) to the task pane
我正在尝试使用 Dialog API Office 插件。
我可以通过以下方式从任务窗格成功打开对话框:
$scope.openDialog = function () {
Office.context.ui.displayDialogAsync('https://localhost:3000/home',
function (asyncResult) {
dialog = asyncResult.value;
dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
});
}
我的对话框是一个 mean-stack
站点。我在 index.html
中添加了 <script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>
。我尝试使用 Office.context.ui.messageParent(true);
,它在控制台中显示错误:
而且我在文档中看到我不太理解:
The Office JavaScript library is loaded in the page. (Like any page
that uses the Office JavaScript library, script for the page must
assign a method to the Office.initialize property, although it can be
an empty method. For details, see Initializing your add-in.)
我也试过在index.html
中添加Office.initialize = function () { };
,错误依旧,任务面板的processMessage
好像没有收到任何东西
所以我应该对我的 mean-stack
网站做些什么特别的事情,以便它可以使用 messagePerent
?
控制台错误不会对对话框产生任何不良影响。我们已经在内部修复了它。您可以忽略此错误。您是否检查过 office.context.ui.messageParent 是 null 还是 undefined ?如果不是,则对话框已成功初始化。那只会是postMessage方法有问题,你用的是什么系统和浏览器版本?
1.如果是Win10及最新版IE,请确保对话框首页域与任务面板域相同。或者你可以使用其他浏览器试试。
2、如果是Win7&8&8.1和IE,那么你可以在其他浏览器中试试看messageParentapi是否有效。我们已经完成了代码更改以修复 IE 问题。它将很快部署到产品中。
我正在尝试使用 Dialog API Office 插件。
我可以通过以下方式从任务窗格成功打开对话框:
$scope.openDialog = function () {
Office.context.ui.displayDialogAsync('https://localhost:3000/home',
function (asyncResult) {
dialog = asyncResult.value;
dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
});
}
我的对话框是一个 mean-stack
站点。我在 index.html
中添加了 <script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>
。我尝试使用 Office.context.ui.messageParent(true);
,它在控制台中显示错误:
而且我在文档中看到我不太理解:
The Office JavaScript library is loaded in the page. (Like any page that uses the Office JavaScript library, script for the page must assign a method to the Office.initialize property, although it can be an empty method. For details, see Initializing your add-in.)
我也试过在index.html
中添加Office.initialize = function () { };
,错误依旧,任务面板的processMessage
好像没有收到任何东西
所以我应该对我的 mean-stack
网站做些什么特别的事情,以便它可以使用 messagePerent
?
控制台错误不会对对话框产生任何不良影响。我们已经在内部修复了它。您可以忽略此错误。您是否检查过 office.context.ui.messageParent 是 null 还是 undefined ?如果不是,则对话框已成功初始化。那只会是postMessage方法有问题,你用的是什么系统和浏览器版本? 1.如果是Win10及最新版IE,请确保对话框首页域与任务面板域相同。或者你可以使用其他浏览器试试。 2、如果是Win7&8&8.1和IE,那么你可以在其他浏览器中试试看messageParentapi是否有效。我们已经完成了代码更改以修复 IE 问题。它将很快部署到产品中。