gpt4 book ai didi

office365 - 必须始终设置 Office.initialize 吗?

转载 作者:行者123 更新时间:2023-12-02 11:28:06 25 4
gpt4 key购买 nike

我有一个 Office.js 任务 Pane 加载项,在用户在任务 Pane UI 上执行特定操作之前,它不会对 Office API 执行任何操作。 UI 是一个 angular.js SPA。因此,自然地,我无需对 Office.initilize 执行任何操作。但是,我一直遇到以下错误,直到我给 Office.initilize 一个空函数。

SCRIPT5022: Unhandled exception at line 11, column 10360 in https://localhost:44300/Scripts/Office/1/office.js 0x800a139e - JavaScript runtime error: Office.js has not been fully loaded yet. Please try again later or make sure to add your initialization code on the Office.initialize function. office.js (11,10360)

摆脱这个问题的代码是:

  <script type="text/javascript">
Office.initialize = function (reason) {
// Nothing to do here..
}
</script>

这是预期的行为吗?顺便说一句,该错误不是立即发生的,也不是响应任何 API 调用或用户交互的。看起来它被 Office.js 文件内的 setTimeout 抛弃了。

最佳答案

当加载运行时环境并且加载项准备好开始与应用程序和托管文档交互时,会发生 Office.initialize 事件,并且必须将其初始化为代码文件开头的函数,以便 Office从函数调用时,.context 属性或任何其他 Office 属性将可用。

引用链接: https://msdn.microsoft.com/en-us/library/office/fp161139.aspx https://msdn.microsoft.com/en-us/library/office/fp142255.aspx

因此,在您的场景中,您可能没有对此事件执行任何操作,但应用程序中的任何其他代码正在使用 office.js 中的任何属性。

希望这对您有帮助。

关于office365 - 必须始终设置 Office.initialize 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34603710/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com