Office js REST调用后Office js更新UI

Office js REST调用后Office js更新UI,office-js,outlook-web-addins,Office Js,Outlook Web Addins,我正在使用office js库开发Outlook插件。该应用程序的部分功能是将电子邮件存储在我们的云平台中,以便它们可以与系统中的其他数据相关。为了使它成为一个一步的过程,我们希望使用户能够从我们的外接程序中发送电子邮件。我通过调用item.saveAsync方法将项目保存为草稿,然后从REST API调用messages/{itemId}/send,成功发送电子邮件,之后我可以将详细信息发送到我们的云平台。我唯一的问题是Outlook UI(正在测试Outlook.live.com)永远不会更

我正在使用office js库开发Outlook插件。该应用程序的部分功能是将电子邮件存储在我们的云平台中,以便它们可以与系统中的其他数据相关。为了使它成为一个一步的过程,我们希望使用户能够从我们的外接程序中发送电子邮件。我通过调用item.saveAsync方法将项目保存为草稿,然后从REST API调用messages/{itemId}/send,成功发送电子邮件,之后我可以将详细信息发送到我们的云平台。我唯一的问题是Outlook UI(正在测试Outlook.live.com)永远不会更新。我正在office js API中寻找一种触发UI重画/关闭编辑器等的方法,但我画了一个空白。任何帮助都将不胜感激


如果我不能更新用户界面,有没有更好的方法在电子邮件发送后获取其详细信息?我知道SentItem处理程序是可能的,但我的理解是,它只用于没有UI的加载项,我们需要加载项的上下文来了解如何处理云平台中的电子邮件信息

没有用于重新绘制/刷新UI的JS API,但是可以使用Office.context.mailbox.item.close()关闭编辑器。

没有用于重新绘制/刷新UI的JS API,但是可以使用Office.context.mailbox.item.close()关闭编辑器。

可以在终端处理程序中显示对话框。但是有5分钟的时间限制,你需要采取一些行动。最后,Outlook会自行发送该项目,除非您拒绝该项目。我认为没有办法告诉Outlook邮件已经发送。如果没有,您可以在此处记录该功能的用户语音请求:如果您只想关闭编辑器,则可以使用Office.context.mailbox.item.close()。对于这个场景,您还需要更多吗?我究竟是如何在docs(它就在那里)或intellisense中看不到该方法调用的?然后我将以post Office.context.mailbox.item.close()作为答案。如果您真的想了解intellisense,那么如果您使用的是来自的d.ts,它可能会丢失。让我们知道。注意到发生了一些奇怪的事情。保存、发送并调用getItemIdAsync后,我会得到一个Id,最后两个字符总是这样“…EqauWAAAA”,但稍后当用户导航到outlook sent items文件夹中的项目时,outlook js给我的itemId以“…Eqdp7AAAA”结尾。为什么Id会更改?您可以在OnSend处理程序中显示一个对话框。但是有5分钟的时间限制,你需要采取一些行动。最后,Outlook会自行发送该项目,除非您拒绝该项目。我认为没有办法告诉Outlook邮件已经发送。如果没有,您可以在此处记录该功能的用户语音请求:如果您只想关闭编辑器,则可以使用Office.context.mailbox.item.close()。对于这个场景,您还需要更多吗?我究竟是如何在docs(它就在那里)或intellisense中看不到该方法调用的?然后我将以post Office.context.mailbox.item.close()作为答案。如果您真的想了解intellisense,那么如果您使用的是来自的d.ts,它可能会丢失。让我们知道。注意到发生了一些奇怪的事情。保存、发送并调用getItemIdAsync后,我会得到一个Id,最后两个字符总是这样“…EqauWAAAA”,但稍后当用户导航到outlook sent items文件夹中的项目时,outlook js给我的itemId以“…Eqdp7AAAA”结尾,为什么Id会发生变化?