Ms office “将消息从主机页发送到”对话框
我正在尝试使用Office加载项 根据文档,我们可以使用Ms office “将消息从主机页发送到”对话框,ms-office,office-js,Ms Office,Office Js,我正在尝试使用Office加载项 根据文档,我们可以使用Office.context.ui.messageParent将对话框中的消息发送到主机页(例如,任务窗格)。然而,我不知道如何将消息从主机页发送到对话框 有人知道怎么做吗?有两种可能的解决方案: 当您打开pagein对话框时,将数据作为查询参数发送 若在同一个域中有,那个么本地存储应该在打开的对话框中可用。 setInterval(函数(){var value=localStorage.getItem(“dataFromDialog”);
Office.context.ui.messageParent
将对话框中的消息发送到主机页(例如,任务窗格)。然而,我不知道如何将消息从主机页发送到对话框
有人知道怎么做吗?有两种可能的解决方案:
setInterval(函数(){var value=localStorage.getItem(“dataFromDialog”);},500)
您可以在dialoglocalStorageSetItem(“dataFromDialog”、“message to parent”)中的localStorage中写入相同的值。
此功能现在处于预览状态 看 文章中的例子:
Office.context.ui.addHandlerAsync(
Office.EventType.DialogParentMessageReceived,
onMessageFromParent);
function onMessageFromParent(event) {
var messageFromParent = JSON.parse(event.message);
}
你能解释一下“查询参数”吗?对于
localstorage
,对话框如何通知主机页localstorage
中有新内容?当您通过displayDialog(url)打开一个对话框时,您可以使用查询参数构造url,如和此值,您可以在页面中读取您在对话框中加载的内容。Ragarding to localstorage:我认为您可以定期从家长那里检查localstorage是否有更改。我没有说过这很方便。这只是一个解决方案,我也在使用它。如果有其他办法,我会很高兴,但我没有找到解决这个问题的其他办法。所以如果你发现了什么,最好在这里分享:)好的。。。让我们看看别人怎么说。。。奇怪的是,没有办法发送类似于post.message
…@SoftTimur的消息:在几个小时前的评论中,您说“我希望对话框可以随时向主机页发送消息”,这可以通过messageParent完成。但您最初的问题是关于主机页向对话框发送消息。目前还没有API来做这件事。似乎是一个重复的请投票的功能要求,如答案中所示。